Выбрать запись между двумя датами - PullRequest
0 голосов
/ 09 апреля 2019

sql query and table result

У меня есть таблица с именем продажи, где у меня есть запись о различных продажах. Теперь я хочу выбрать запись между двумя конкретными датами, но когда я запускаю запрос в sql, я даю нулевой результат.

Ответы [ 5 ]

1 голос
/ 09 апреля 2019

У меня есть пара догадок ... Во-первых, ваш столбец date имеет тип varchar.

Во-вторых, у вас неправильный формат дат, стандарт для SQL - yyyy-MM-dd, поэтому я рекомендую использовать его.

Итак, сначала вам нужно изменить тип данных:

alter table sale
alter column [date] date

И затем фильтр с соответствующим форматом (но это только предположение):

where [date] between 2019-02-09 and 2019-04-09
0 голосов
/ 09 апреля 2019

вы получаете ноль, так как нет записей на указанные даты.9-4-2019 и 9-4-2019

0 голосов
/ 09 апреля 2019

Попробуйте использовать DATEPART,

SELECT SUM(price) as 'Amount'
FROM sale 
WHERE (YEAR(date) between YEAR('09-02-2019') AND YEAR('09-04-2019')) AND
(MONTH(date) between MONTH('09-02-2019') AND MONTH('09-04-2019')) AND
(DAY(date) between MONTH('09-02-2019') AND DAY('09-04-2019')) 
0 голосов
/ 09 апреля 2019

Попробуйте это
SELECT SUM(SALE.PRICE) AS AMOUNT FROM SALE WHERE SALE.DATE BETWEEN '09-02-2019' AND '09-04-2019';
или может быть проблема формата даты, также попробуйте это
SELECT SUM(SALE.PRICE) AS AMOUNT FROM SALE WHERE SALE.DATE BETWEEN '2019-02-09' AND '2019-04-09;'

0 голосов
/ 09 апреля 2019

Используйте следующий запрос

SELECT * 
FROM 
TABLE_Name 
WHERE Column Between Date and DateU

U означает верхнюю дату, а L означает нижнюю дату

...