sql >> Databasteknik >  >> RDS >> Oracle

tom sträng i orakel

Detta är en konstig anakronism i Oracle (med standardinställningar). Oracle behandlar verkligen en tom sträng som NULL . Detta inkluderar i jämförelser, så:

where mycolumn = ''

är samma som:

where mycolumn = NULL

Och detta returnerar aldrig sant (NULL <> NULL ).

Mitt råd? Vänj dig vid att använda NULL uttryckligen och skriva:

where mycolumn is null


  1. Undvik sortering med Merge Join-konkatenering

  2. SQL:ta bort all data från alla tillgängliga tabeller

  3. SYSDATETIME() vs GETDATE() i SQL Server:Vad är skillnaden?

  4. clojure.java.jdbc lat fråga