重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

【GOLF me!】初月無料お試し

初心者です。
以下のSQL文の違い及びcount(1)の1が何を表しているのか
教えて頂けないでしょうか?

select count(*) from table
select count(1) from table

また、参考しやすいサイト等ありましたら教えて頂けないでしょうか?

A 回答 (2件)

COUNT(*)はNULLを含む件数


COUNT(expr)とCOUNT(ALL expr)はexpr列のNULLが含まない件数
COUNT(DISTINCT expr) expr列の種類(null以外)
です。
たまにcount(1)の記述を確かに見受けます。
これは「select 1 from <TABLE名>」でカウントした結果と同じです。
(つまり、count(*)と同じ件数になるはず)
#ためしにCOUNT(DISTINCT 1)とかすると1になるはずです
#1番目の列ではないはず
    • good
    • 4
この回答へのお礼

大変参考になりました、ありがとうございました。

お礼日時:2006/10/12 23:37

Count(1)はテーブル項目1番目の項目がNULLでない件数


Count(*)はテーブル内の件数
だったと思います。

参考URL:http://www.sqlpowerpage.co.jp/
    • good
    • 2
この回答へのお礼

大変参考になりました、ありがとうございました。

お礼日時:2006/10/12 23:29

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!