NIRMAL AJAY Ответов: 1

Где условие на дату не показывается равно дате


ниже мой код

это будет показывать записи с даты 08 по 18, не предоставляйте записи "2017-02-19".

Что я уже пробовал:

SELECT * FROM Bill WHERE 
                     B.Date >= CAST('2017-02-08 12:07:40.330' AS Date)
                     AND
                     B.Date <= CAST('2017-02-19 12:09:13.560' AS Date)

NotPolitcallyCorrect

"С 08 по 18, не предоставляйте записи "2017-02-19", и почему вы этого ожидаете?

1 Ответов

Рейтинг:
5

Bryian Tan

Пока не знаю, каковы именно ваши намерения. Но если вы обратите пристальное внимание,

CAST ('2017-02-19 12: 09:13.560' AS Date) return 2017-02-19 (по умолчанию время равно
00: 00: 00.000) и явно 2017-02-19 00: 00: 00.000 не больше или равно 2017-02-19 12: 09:13.560

Это может сработать.

SELECT * FROM Bill b WHERE 
                     B.[Date] >= CONVERT(VARCHAR(120), '2017-02-08 12:07:40.330', 120)
                     AND
                     B.[Date] <= CONVERT(VARCHAR(120), '2017-02-19 12:09:13.560', 120) 

Или
SELECT  * FROM Bill b WHERE 
                     CAST(B.[Date] AS Date) BETWEEN CAST('2017-02-08' AS Date)
                     AND
                     CAST('2017-02-19' AS Date)


NIRMAL AJAY

он работает хорошо, спасибо Брайан