Oracle
 sql >> Baza danych >  >> RDS >> Oracle

PRZYPADEK vs. DEKODOWANIE

Jest jedna duża różnica między DECODE i CASE i ma to związek z tym, jak NULLs są porównywane. DECODE zwróci "true" jeśli porównasz NULLs na NULLs . CASE nie będzie. Na przykład:

DECODE(NULL, NULL, 1, 0)

zwróci '1'.

CASE NULL
    WHEN NULL THEN 1
    ELSE 0
END

zwróci '0'. Musiałbyś napisać to jako:

CASE
    WHEN NULL IS NULL THEN 1
    ELSE 0
END


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jaka jest główna różnica między Varchar2 a char

  2. Używanie funkcji Max() do wybierania wartości grup

  3. Jak mogę zabić wszystkie sesje łączące się z moją bazą danych Oracle?

  4. Jak przyspieszyć ładowanie danych z Oracle sql do pandas df

  5. Jak znaleźć zależności w pakiecie Oracle?