sql >> Database >  >> RDS >> Sqlserver

Waarom is mijn CASE-uitdrukking niet-deterministisch?

Je moet CONVERT '20100101' met een stijl.

Dus, probeer dit:

...WHEN [Date] > CONVERT(datetime, '20100101', 112)....

Datum ontleden van string kan onbetrouwbaar zijn als Ik heb eerder geantwoord (meestal in reacties)

Bewerken:

Ik zou niet zeggen dat het een bug is, maar SQL Server vraagt ​​om 100% opheldering. yyyymmdd is geen ISO en SQL Server-parsing yyyy-mm-dd is onbetrouwbaar (zie mijn antwoordlink)



  1. Excel-gegevensblad laden in Oracle-database

  2. GROUP BY alleen rijen met een bepaalde voorwaarde en datum

  3. Joomla! 3 installatie loopt vast bij het maken van een databasetabel

  4. Hoe verwerkt Oracle opgeslagen functieaanroepen in SQL?