sql >> Databasteknik >  >> RDS >> Oracle

Bool stöder Oracle SQL

Du kan skriva ditt eget omslag så här:

CREATE OR REPLACE FUNCTION my_bool_to_str(f varchar2) RETURN VARCHAR2 IS

  b varchar2(2);

BEGIN

  EXECUTE IMMEDIATE 'declare bl boolean; begin bl := ' || f ||
                    '; if bl then :1 := ''y''; else :1 := ''n''; end if; end;'
    using out b;

  return b;

END;

Då kan du kalla det så här:

SELECT part_no,
       my_bool_to_str('stock_pkg.is_in_stock('|| part_no|| ')') in_stock
FROM   parts_table

Skillnaden från din wrapper är att den får en varchar som indata och inte en boolean som SQL-motorn inte känner igen




  1. Vilken storlek använder du för varchar(MAX) i din parameterdeklaration?

  2. Verktyg för att generera ett databasdiagram/ER-diagram från befintlig Oracle-databas?

  3. Postgres:Distinkt men bara för en kolumn

  4. Hur definierar man en trigger ON COMMIT i Oracle?