Converter para datetime produzindo resultados incorretos

votos
2

Eu estou tentando converter um varcharvalor de coluna em datetimetipo de dados, e eu não estou recebendo o resultado esperado.

SELECT CONVERT(DATETIME, '2020-01-09 10:22:45.214') UNION ALL 
SELECT CONVERT(DATETIME, '2020-01-09 10:22:45.215') UNION ALL
SELECT CONVERT(DATETIME, '2020-01-09 10:22:45.216') UNION ALL 
SELECT CONVERT(DATETIME, '2020-01-09 10:22:45.217') UNION ALL 
SELECT CONVERT(DATETIME, '2020-01-09 10:22:45.218') UNION ALL 
SELECT CONVERT(DATETIME, '2020-01-09 10:22:45.219') UNION ALL 
SELECT CONVERT(DATETIME, '2020-01-09 10:22:45.220')

Estou recebendo os seguintes resultados:

2020-01-09 10:22:45.213
2020-01-09 10:22:45.217
2020-01-09 10:22:45.217
2020-01-09 10:22:45.217
2020-01-09 10:22:45.217
2020-01-09 10:22:45.220
2020-01-09 10:22:45.220

Eu tentei executar esse código em ambos os SSMS 2014 e 2017 com o mesmo resultado. Eu não tenho certeza do que estou fazendo de errado aqui ...

Publicado 14/02/2020 em 00:05
fonte usuário
Em outras línguas...                            

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more