Я действительно не могу понять, почему инструкции SELECT CONVERT(NVARCHAR(30), GETDATE(), 114)
выходы, например,Неправильный миллисекунды Сепаратор в SQL Server 2005
13:04:31:997
вместо
13:04:31.997
Почему миллисекунды сепаратор :
Insted .
? В случае, если вам нужно знать, мне нужно проверить, существует ли определенное время между двумя значениями времени, хранящимися как XML в таблице. Проблема заключается в том, что разделитель в этой таблице, как это обычно для меня, является .
, так что использование сравнений между двумя форматами возвращает неверные результаты, потому что один использует .
, а другой использует :
. Есть ли способ получить время с помощью разделителя .
без использования строковых функций, таких как REPLACE
или без изменения формата, хранящегося в таблице?
Вы правы, но строка заказа дает точно такие же результаты, и именно поэтому я использую его. –
@SQL: Но вместо этого конвертируя другой способ, вам не нужно беспокоиться о форматировании строки. Это, как правило, лучший подход - преобразование данных * в сторону * наиболее логичного формата данных, а не от него. –