定数値または*
の代わりに、テーブル内のフィールドまたは括弧内の式を指定しない限り、実際には何もありません。詳細な回答をさせていただきます。 Countは、指定されたフィールドのnull以外のレコード番号を提供します。 Aという名前のテーブルがあるとします
select 1 from A
select 0 from A
select * from A
すべて同じ数のレコード、つまりテーブルAの行数を返します。それでも出力は異なります。テーブルに3つのレコードがある場合。フィールド名としてXとYを使用
select 1 from A will give you
1
1
1
select 0 from A will give you
0
0
0
select * from A will give you ( assume two columns X and Y is in the table )
X Y
-- --
value1 value1
value2 (null)
value3 (null)
したがって、3つのクエリはすべて同じ数値を返します。使用しない限り
select count(Y) from A
null以外の値は1つしかないため、出力として1を取得します