Преобразование varchar во время не удалось в SQL Server 2014 - PullRequest
0 голосов
/ 10 мая 2018

Моя таблица:

enter image description here

Когда я преобразовываю его во время, происходит сбой при выборе из таблицы:

enter image description here

Но, когда я проверяю это в виде строки, проблем не возникает.В чем проблема?Я не знаю.

enter image description here

Ответы [ 2 ]

0 голосов
/ 10 мая 2018
select CONVERT(time, substring((CASE TimOut WHEN '0' THEN '00:00' ELSE TimOut END),1,5),104) from tbl_test
0 голосов
/ 10 мая 2018

Я думаю, у вас есть новая строка в вашем столбце времени. Пожалуйста, используйте подстроку, чтобы получить точное время.

select CONVERT(time, substring(timout, 1, 5), 104) 
from tbl_test

Преобразование создаст проблему, когда время будет нулевым или недействительным, поэтому используйте функцию Len .

select CONVERT(time, substring(timout, 1, 5), 104) 
from tbl_test  
where len(TimOut) > 4
...