Я пытаюсь написать запрос, чтобы считать каждую дату в моей базе данных, как вы можете увидеть здесь:GROUP BY дата не DateTime в SQL Server
SELECT
[SubmitDateTime],
COUNT(*)
FROM
[ParkingDB].[dbo].[Traffic]
GROUP BY
submitdatetime
Результатом является:
Я думаю, что SQL Server группирует мою дату на основе даты + времени, и это моя проблема, но на самом деле мне нужно сгруппировать их по дате. Я использую этот тип запроса:
SELECT
[SubmitDateTime],
COUNT(*)
FROM
[ParkingDB].[dbo].[Traffic]
GROUP BY
CAST(myDateTime AS DATE)
Но это не сработает. Я получаю эту ошибку:
Msg 8120, Level 16, State 1, Line 3 Column
'ParkingDB.dbo.Traffic.SubmitDateTime' is invalid in the select list because it is not contained in either an aggregate function or the GROUP BY clause.
Что вы подразумеваете под этим не работает? –
@FelixPamittan Я получаю эту ошибку: Msg 8120, уровень 16, состояние 1, строка 3 Столбец «ParkingDB.dbo.Traffic.SubmitDateTime» недопустим в списке выбора, потому что он не содержится ни в агрегатной функции, ни в GROUP BY пункт. –
У вас есть два рабочих ответа ниже. Я предлагаю вам отметить один из них в качестве ответа, чтобы этот вопрос был разрешен. Спасибо –