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

SQLでテーブルの行数をカウントする方法

    問題:

    テーブルの行数を確認したい。

    例:

    私たちのデータベースには、pet 次の列にデータがあります:ideID (電子識別子)、およびname

    id eID 名前
    1 23456 スパーキー
    2 23457 mily
    3 NULL レッシー
    4 NULL カール
    5 34545 マギー

    テーブル内のすべての行を数えましょう。

    解決策:

    COUNT(*) テーブル内の行の総数をカウントします:

    SELECT COUNT(*) as count_pet
    FROM pet;
    

    結果は次のとおりです。

    count_pet
    5

    引数としてアスタリスクを渡す代わりに、特定の列の名前を使用できます:

    SELECT COUNT(id) as count_pet
    FROM pet;
    

    この場合、COUNT(id) idが含まれる行数をカウントします NULLではありません 。

    ディスカッション:

    COUNTを使用する テーブルの行数をカウントする集計関数。この関数は、引数として列の名前を取ります(例:id )そして、テーブル内のこの特定の列の行数(5など)を返します。

    上記のように、アスタリスクの代わりに列を指定すると、関数はNULL以外のみをカウントします。 値。 idはテーブルの主キーであるため、一意でNULLではありません。 値-テーブルの行の総数を数えるのに適した候補です。

    もちろん、すべての行をカウントするには、代わりにCOUNTの引数としてアスタリスク文字を渡すことができます。これにより、値がNULLの行を含む、すべての行がカウントされます。 任意の列で。

    NULLを持つ列の行数をカウントする例を次に示します。 値:

    SELECT COUNT(eID) as count_pet
    FROM pet;
    
    count_pet
    3

    テーブルの行数をカウントするには、主キー列または*文字をCOUNT関数に渡すことをお勧めします。これまで見てきたように、どちらのアプローチでも同じ結果が得られます。


    1. MySQLの日時フィールドにNULL値を保存する方法は?

    2. Laravel移行エラー:構文エラーまたはアクセス違反:1071指定されたキーが長すぎました。キーの最大長は767バイトです

    3. SQLServerへのUTF-16/Unicodeデータの保存

    4. PostgreSQLで2つのスキーマを比較する方法