在以下while循環中,從表中添加所選值時,變量@total
的結果爲NULL
。如果不添加,結果將顯示爲表格中的選定值,但僅顯示最後一行的值。在循環中無法將值增加到Sql中的變量
SET @coundDate = '1/1/2012';
WHILE (Datepart(dd, @countDate) < Datepart(dd, @endDate))
BEGIN
SET @total = @total + (SELECT Cast([7am] AS INT) +
Cast([8am]AS INT) AS TotalHitCount
FROM Sale
WHERE TransactionDate = @countDate);
SET @countDate = Dateadd(d, 1, @countDate);
END;
SELECT @total
我現在混淆了很多。那是什麼錯誤?
你爲什麼要做這個循環。 「SUM」不會爲你工作嗎? –
如何在這種情況下「分組」? –
從您顯示的代碼中,您不需要'group by'。只需選擇「where」即可選擇感興趣的行。 –