sql >> Base de Datos >  >> RDS >> Sqlserver

¿Por qué [fecha] + ([hora] - [desplazamiento]) no es determinista en SQL Server 2008?

Su '1900-01-01' no es determinista porque depende de la configuración del idioma. por supuesto, esto no es ambiguo para la configuración de DMY o MDY, pero generalmente es ambiguo

Prueba '19000101' :SQL Server trata las fechas y las horas de forma un tanto extraña:"yyyy-mm-dd" puede tratarse como "yyyy-dd-mm" si tiene una configuración británica a pesar de ser ISO en teoría

Editar:use esto para eliminar el aspecto de la fecha:DATEADD(day, 0, DATEDIFF(day, 0, [time]))

Edit2:el 1 de enero de 1900 es cero en los formatos de fecha y hora, por lo que no es necesario restarlo. ¿Puedes publicar datos de muestra y resultados, por favor?