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

Countを使用すると、Mysqlは1行のみを返します

    ええ、カウントは集計演算子であり、1行のみが返されます(group by句なし)

    たぶん2つの別々のクエリを作成しますか?そのデータは一緒に属していないため、行にデータと行の総数を返すことは意味がありません。

    本当に必要な場合は、次のようにすることができます:

    SELECT *, (select count(*) FROM notis WHERE cid=20) AS count FROM notis WHERE cid=20 ORDER BY nid DESC LIMIT 0,3
    

    またはこれ:

    SELECT N.*, C.total from notis N join (select count(*) total FROM notis WHERE cid=20) C WHERE cid=20) AS count FROM notis WHERE cid=20 ORDER BY nid DESC LIMIT 0,3
    

    SQL方言に応じて、ネストされた式に差異があります。



    1. eコマースでのデータベースの使用方法

    2. テーブルのセットでCDCを有効にする方法、またはSQLServerのデータベース内のすべてのテーブルで有効にする方法-SQLServerチュートリアル

    3. PythonとMySql:Unicodeとエンコーディング

    4. 2022年に準備しなければならないMySQLインタビューの質問トップ50