Oracle の COUNT(1) と COUNT(*) の違いは次のとおりです。 COUNT(1) は null 値を無視し、空でない行のみをカウントします。 COUNT(*) は null 値を含むすべての行をカウントします。 ; どの関数を選択するかは、NULL 値の存在、パフォーマンスまたは一貫性の優先順位によって決まります。
Oracle の COUNT(1) と COUNT(*) の違い
Oracle では、COUNT(1) ) と COUNT(*) はどちらもテーブル内のレコード数を数えるために使用される集計関数ですが、それらの間には微妙な違いがあります。
COUNT(1)
COUNT(*)
どれを選択しますか?
COUNT(1) または COUNT(*) の選択は、次の要因によって異なります:
例
次のデータを含む students
という名前のテーブルがあるとします。
<code>| id | name | age | |---|---|---| | 1 | John | 20 | | 2 | NULL | 25 | | 3 | Mary | 22 |</code>
If クエリこのテーブルは COUNT(1) を使用しており、次の結果が返されます。
<code>SELECT COUNT(1) FROM students; 2</code>
これは、COUNT(1) が NULL 値を無視するためです。
COUNT(*) を使用してこのテーブルをクエリすると、次の結果が返されます。
<code>SELECT COUNT(*) FROM students; 3</code>
これは、COUNT(*) に NULL 値が含まれているためです。
以上がoracleのcount1とcount*の違いの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。