ええ、カウントは集計演算子であり、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方言に応じて、ネストされた式に差異があります。