Oracle
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Oracle

Bool hỗ trợ Oracle SQL

Bạn có thể viết trình bao bọc của riêng mình như sau:

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;

Sau đó, bạn có thể gọi nó như thế này:

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

Sự khác biệt so với trình bao bọc của bạn là nó nhận một varchar làm đầu vào chứ không phải boolean mà công cụ SQL không nhận ra




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Oracle 11g Express Edition dành cho Windows 64bit?

  2. Kết nối Oracle với Amazon Aurora

  3. Tuyên bố trường hợp Oracle được giải thích với các mẹo và ví dụ

  4. Giải thích về toán tử Oracle MINUS

  5. Liên kết lại cơ sở hạ tầng lưới