4

私は(テストで)どの集計関数がDATE型の列に適用できるかについての質問に出くわしました。したがって、私が理解しているように、COUNTは行数をカウントするだけで、MINとMAXは最も早い/最も遅い日付を返します。ただし、SUM関数とAVG関数については少し混乱しています。DATE値をintに変換し、それらのintの合計/平均を計算するだけですか?それとも私はここで間違っていますか?とにかく、この動作はSQLのすべての実装で一貫していますか?前もって感謝します。

4

1 に答える 1

5

MS SQL Serverの場合型に対して演算子を呼び出すことも、演算子を呼び出すこともできませSUMん。datetimeAVG

MSDNには、SUM演算子の戻りタイプがここにリストされています:http:
//msdn.microsoft.com/en-us/library/ms187810.aspx

また、演算子を呼び出すことができるタイプの有効なリファレンスでもあります。SUM

編集:あなたのコメントに応えて、sqlfiddleのようなサイトを使用してさまざまな実装をテストすることができます

http://www.sqlfiddle.com/#!3/22cee/1

のバックエンドストレージが標準化されていないことを考えると、データベースが返されるか、予測可能な方法で結果が得られるかどうかに依存するべきではないdatetimeと私は主張します。SUMAVG

于 2012-06-14T19:45:45.737 に答える