sql >> データベース >  >> RDS >> Sqlserver

Group By句を使用せずにSelectステートメントでAggregate関数を使用することは可能ですか?

    集計を持たない SELECT 句のすべての列は、GROUP BY 内にある必要があります

    良い:

    SELECT col1, col2, col3, MAX(col4)
    ...
    GROUP BY col1, col2, col3
    

    また良い:

    SELECT col1, col2, col3, MAX(col4)
    ...
    GROUP BY col1, col2, col3, col5, col6
    

    他の列がない =GROUP BY は不要

    SELECT MAX(col4)
    ...
    

    動作しません:

    SELECT col1, col2, col3, MAX(col4)
    ...
    GROUP BY col1, col2
    

    無意味:

    SELECT col1, col2, col3, MAX(col4)
    ...
    GROUP BY col1, col2, col3, MAX(col4)
    

    GROUP BY を使用せずに他の列と集計 (MAX など) を使用しても、クエリがあいまいになるため意味がありません。



    1. SQL Server バックアップが DB ファイルよりもはるかに大きいのはなぜですか?

    2. MySQL:開始日と終了日の間の日付のIN句?

    3. すべてのファイルをサーバーにアップロードしないで、phpを使用してサーバーに複数のファイルをアップロードする

    4. 同じリストにあるメールを見つける方法は?