• ベストアンサー

ACCESSのレコード数表示

ACCESS97において フィールド数 複数(仮にA~E) レコード数  複数 値    3or2or1の時の フィールドAにおける3のレコード数         2のレコード数         1のレコード数 これをフィールドA~Eすべてについて 知りたいのですが、良い方法を知りませんか?

質問者が選んだベストアンサー

  • ベストアンサー
  • Hk2001
  • ベストアンサー率48% (24/49)
回答No.1

クエリでいいのですか? どんな、結果で答えがほしいのかわかりません。 クエリで結果が知りたいのであれは IIfの関数をしようしては? テーブル名をテーブル1で作成 フィールド名 A データ型:テキスト B データ型:テキスト C データ型:テキスト で定義 クエリで以下の構文を使ってみてください。 参考位にはなるかも SELECT Sum(IIf([A]='1',1,0)) AS A1, Sum(IIf([A]='2',1,0)) AS A2, Sum(IIf([A]='3',1,0)) AS A3, Sum(IIf([B]='1',1,0)) AS B1, Sum(IIf([B]='2',1,0)) AS B2, Sum(IIf([B]='3',1,0)) AS B3, Sum(IIf([C]='1',1,0)) AS C1, Sum(IIf([C]='2',1,0)) AS C2, Sum(IIf([C]='3',1,0)) AS C3 FROM テーブル1;

すると、全ての回答が全文表示されます。

その他の回答 (1)

  • arata
  • ベストアンサー率49% (139/279)
回答No.2

Hk2001さんと同じやり方で、Countを使う方法もあります。 SELECT Count(IIf([A]=1,1,Null)) AS A1, Count(IIf([A]=2,1,Null)) AS A2, Count(IIf([A]=3,1,Null)) AS A3, Count(IIf([B]=1,1,Null)) AS B1, Count(IIf([B]=2,1,Null)) AS B2, Count(IIf([B]=3,1,Null)) AS B3, Count(IIf([C]=1,1,Null)) AS C1, Count(IIf([C]=2,1,Null)) AS C2, Count(IIf([C]=3,1,Null)) AS C3 FROM テーブル1; Countは、値がNullのものは数えないことを利用したものです。 ですから、 Count(IIf([A]=1,1,Null)) AS A1 は Count(IIf([A]=1,[A],Null)) AS A1 でもかまいません。 Sumと同じように結果が返ってきますが、レコード数が0の場合、Sumでは、Nullが返ってくるところ、Countでは0が返ってきます。 必ず複数レコードあるのであれば、結果は同じです。

すると、全ての回答が全文表示されます。

関連するQ&A