sql >> Database teknologi >  >> RDS >> Sqlserver

Hvorfor er [dato] + ([tid] - [offset]) ikke-deterministisk i SQL Server 2008?

Din '1900-01-01' er ikke-deterministisk, fordi det afhænger af sprogindstillinger. selvfølgelig, dette er utvetydigt for DMY eller MDY indstillinger, lidt generelt er det tvetydigt

Prøv '19000101' :SQL Server behandler datoer og klokkeslæt noget mærkeligt:​​"åååå-mm-dd" kan behandles som "åååå-dd-mm", hvis du har britiske indstillinger på trods af at det er ISO i teorien

Rediger:brug dette til at fjerne datoaspektet:DATEADD(day, 0, DATEDIFF(day, 0, [time]))

Edit2:1. januar 1900 er nul i datetime-formaterne, så det er ikke nødvendigt at trække det fra. Kan du sende eksempeldata og output venligst?



  1. Sådan viser du serversorteringen i MySQL

  2. En Entity Framework-databaseudbyder, der er kompatibel med denne version, blev ikke fundet

  3. Skal vise MAX COUNT af den samlede kunde ved at sammenligne to tabeller

  4. Forståelse af ydeevnepåvirkninger for mysql tuple-søgning