sql >> Databasteknik >  >> RDS >> Oracle

Oracle Decode-funktion ger resultat med olika format

decode funktionsresultat har datatypen för den tredje parametern. I det första fallet eftersom ingen datatyp är specificerad för NULL , används standard VARCHAR2. I det andra fallet efterfrågas ett DATUM uttryckligen och resultatet är därför ett datum.

Med andra ord, den första frågan är densamma som:

SELECT DECODE(SYSDATE, SYSDATE + 1, to_char(NULL), to_char(SYSDATE)) FROM DUAL;

Utdata från denna fråga kommer att formateras enligt din NLS_DATE_FORMAT sessionsparameter, medan den andra frågan returnerar ett datum som kommer att visas enligt dina klientinställningar.




  1. Oracle SQL:Att extrahera veckan på året från datum ger slumpmässiga resultat

  2. Varför producerar fputcsv dubbletter av kolumner?

  3. Hur infogar/uppdaterar man större data i Oracle-tabellerna?

  4. PLS-00539 och PLS-00538 fel vid skapande av UDT-funktioner