Считать дни в диапазоне дат? - PullRequest
2 голосов
/ 08 апреля 2010

У меня такой запрос:

SELECT COUNT(*) AS amount
FROM daily_individual_tracking
WHERE sales = 'YES'
AND daily_individual_tracking_date BETWEEN '2010-01-01' AND '2010-03-31'

Я выбран из диапазона дат. Есть ли способ также получить общее количество дней в диапазоне дат?

Ответы [ 5 ]

14 голосов
/ 08 апреля 2010

Не совсем понятно, если вы ищете

DATEDIFF('2010-03-31', '2010-01-01')

или

COUNT(DISTINCT daily_individual_racking_date)
0 голосов
/ 08 апреля 2010

Я не уверен, какой SQL вы используете. TSQL имеет DATEDIFF, который будет подсчитывать количество дней между двумя датами. Смотри это

0 голосов
/ 08 апреля 2010

Это зависит от того, какой SQL-сервер вы используете.

Если вы используете MS-SQL Server, вы можете использовать функцию DateDiff

0 голосов
/ 08 апреля 2010

Вы можете использовать функцию MySQL datediff:

SELECT DATEDIFF('2010-01-01','2010-01-31') AS DiffDays

Должен возвращать число с плавающей запятой, где 1.0 представляет один день.

0 голосов
/ 08 апреля 2010

Что именно вы пытаетесь посчитать? Общее количество различных значений daily_individual_tracking_date? Вам нужно в том же запросе, что и запрос count (*)?

...