アクセス クエリ内の正確な一意のアイテム数
Access データベース フィールド内の一意のエントリを効率的にカウントすることは、頻繁に必要となる要件です。 標準の COUNT(*)
関数を使用した単純なアプローチでは、重複した値が含まれているために不正確な結果が得られることがよくあります。
問題
「名前」フィールドに重複したエントリが含まれるテーブル「table1」について考えてみましょう。 クエリ:
SELECT Count(*) FROM table1;
は、一意の名前の数ではなく、行の合計数を返します。
正しいアプローチ
理想的なソリューションには COUNT(DISTINCT field_name)
関数が含まれます。 ただし、この関数は Access では直接動作しません。
解決策: サブクエリの使用
一意の項目を正確にカウントするには、サブクエリを使用します。
(SELECT DISTINCT Name FROM table1)
サブクエリのエイリアス: わかりやすくし、適切に参照できるように、このサブクエリにエイリアス (「T」など) を割り当てます。
個別の値をカウントします: エイリアス化されたサブクエリで COUNT(*)
を使用して、一意の値をカウントします:
SELECT Count(*) AS N FROM (SELECT DISTINCT Name FROM table1) AS T;
この改訂されたクエリでは、一意の名前の数が正しく返されます。
続きを読む
Microsoft Access での一意の値をカウントするための包括的なガイダンスについては、次の役立つリソースを参照してください: Access での一意の値をカウントする
以上がAccess クエリ内の固有のアイテムを正確にカウントするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。