1
Мне нужно использовать функцию MAX в моем предложении where, потому что это дает мне неправильные данные, если я этого не делаю. Вот мой код:SQL MAX date in where clause
(SELECT
Index,
Company,
FormType,
MAX(DocumentDate) AS DocumentDate
FROM dbo.FormInstance AS F
WHERE f.company = 1234
AND (
CAST(FLOOR(CAST([DocumentDate] AS FLOAT))AS DATETIME)
BETWEEN CAST(FLOOR(CAST(@StartDate AS FLOAT))AS DATETIME)
AND CAST(FLOOR(CAST(@EndDate AS FLOAT))AS DATETIME)
)
GROUP BY
Company,
Index,
FormType);
Как бы я сделать, это сказать и MAX (DocumentDate) находится между @start и @end?
Благодаря
Должен ли я помещать DocumentDate где-нибудь в свой оператор select? Я получаю эту ошибку. Столбец «dbo.FormInstance.DocumentDate» недопустим в предложении HAVING, потому что он не содержится ни в агрегатной функции, ни в предложении GROUP BY. – user380432
Вы случайно не оставили его в MAX()? –
nevermind, мой плохой я забыл MAX в наличии cluase Спасибо !!!! – user380432