テーブルのレコードを統計的にまとめる関数を作成しました。この関数は、MSSQL2005で正常に機能します。
DECLARE
@start datetime,
@final datetime,
SET @start = '08.02.2012'
SET @final = '08.02.2013'
SELECT
CAST(
FLOOR(ISNULL(col1,col2)/50) * 50 AS int
) AS [MyCol1],
CAST(
FLOOR(ISNULL(col1,col2)/50) * 50 AS int
)+49 AS [MyCol2],
COUNT(*) AS [Anzahl],
CAST(AVG(col3) AS decimal(3,2)) AS [MyCol3]
FROM T
WHERE Time BETWEEN @start AND @final
GROUP BY
CAST(
FLOOR(ISNULL(col1,col2)/50) * 50 AS INT
)
ORDER BY 1
ここで、この関数をMSSQL 2000システムで使用したいのですが、GroupByリージョンが間違っているようです。
列は、集計関数とGROUP BY句に含まれていないため、選択リストでは無効です。
誰かが私を助けることができますか?