elidrissi.amine1 Ответов: 3

сравните две даты и время с помощью sql server


Когда я пишу следующий sql-запрос в sql server 2008, я получаю синтаксическую ошибку. запрос направлен на получение всех надписей, имеющих столбец "datePreInscription" (который имеет тип datetime), превосходящий 2012-05-31 12:00:00.000
select * from Inscription where datePreInscription > 2012-05-31 12:00:00.000

3 Ответов

Рейтинг:
2

abhinavvijay

напишите ниже запрос

Set dateformat dmy

select * from Inscription where datePreInscription >convert(datetime,'31-5-2012')


Рейтинг:
1

Maciej Los

Попробовать это:

DECLARE @sDate VARCHAR(10)

SET @sDate = '2012-05-31'

SELECT * 
FROM Inscription
WHERE datePreInscription = @sDate


Рейтинг:
0

Manas Bhardwaj

Посмотрите на MSDN статья [^]о приведении и преобразовании.

SELECT * FROM Inscription WHERE datePreInscription > CONVERT(DateTime, '2012-05-31 12:00:00.000')


elidrissi.amine1

это сообщение об ошибке, которое я получаю:
Msg 242, Уровень 16, состояние 3, строка 1 преобразование типа данных varchar в тип данных datetime создало значение вне диапазона.

Member 10319449

Проверьте формат даты.