sql >> Databáze >  >> RDS >> Oracle

Podpora Bool Oracle SQL

Svůj vlastní obal můžete napsat takto:

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;

Pak to můžete nazvat takto:

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

Rozdíl od vašeho wrapperu je v tom, že získává varchar jako vstup a ne boolean, který SQL engine nerozpozná




  1. Funkce MySQL COS() – Vrátí kosinus čísla v MySQL

  2. Pochopení podpory Java pro perzistenci s JPA

  3. Správa a automatizace PostgreSQL s ClusterControl

  4. SQL WHERE.. IN klauzule více sloupců