質問 |
||
| 質問者:tarou12345 | ACCESSであいまいな条件で抽出をするには | |
|---|---|---|
困り度:
|
ACCESS初心者です。 よろしくお願いします。すごく簡単な事かもしれませんがどのように抽出したらよいかわかりません。 チェック項目が(1)〜(6)まであり、2項目以上該当する場合のカウントをしたいのですが、どのようにクエリで記載したらよいかわかりません。 (1)〜(6)までの項目にはそれぞれ基準値があり、基準値を上回っている項目が2項目以上ある人の数をカウントしたいです。 よろしくお願いいたします。 |
|
質問投稿日時:08/05/27 00:30 質問番号:4053380 |
||
回答 |
|
| 回答者:nfushi | 情報が少ないのである程度勝手に推測して話を進めます。 まず2つのテーブルを用意します。 項目の基準値を登録するテーブル(基準値テーブル)と入力データを入れるテーブル(入力テーブル)です。 項目 基準値 1 10 2 20 3 30 4 40 5 50 6 60 人 項目 値 taro 1 20 taro 2 10 taro 3 15 taro 4 20 taro 5 30 taro 6 10 jiro 1 15 jiro 2 25 jiro 3 10 jiro 4 10 jiro 5 20 jiro 6 10 上記のようなテーブル構成にすれば下記のようなSQLで基準値を超える項目が2つ以上の人名が得られます。 SELECT T.人 FROM 基準値テーブル M, 入力テーブル T WHERE M.項目 = T.項目 AND M.基準値 < T.値 GROUP BY T.人 HAVING COUNT(*) > 1 話を勝手に補完してますので、全然見当違いでしたらごめんなさい。 |
|---|---|
| 種類:アドバイス どんな人:専門家 自信:参考意見 |
|
| |
回答日時:08/06/02 02:04 回答番号:No.2 |
|
| この回答への補足 | この回答に補足をつける(質問者のみ) |
| この回答へのお礼 | この回答にお礼をつける(質問者のみ) |
回答 |
|
| 回答者:adaypajimy | 賢いやり方考えるのめんどくさいので、 where文以下のように書き込んで抽出してカウント。 (1) and (2) or (1) and (3) or (1) and (4) or (1) and (5) or (1) and (6) or (2) and (3) or (2) and (4) or (2) and (5) or (2) and (6) or.... で、いいんじゃないかと。意味がわからなかったり、SQLがわからないばあいは、すみません。m(_ _)m |
|---|---|
| 種類:アドバイス どんな人:経験者 自信:参考意見 |
|
| |
回答日時:08/05/27 11:40 回答番号:No.1 |
|
| この回答への補足 | この回答に補足をつける(質問者のみ) |
| この回答へのお礼 | やっぱりそうですか・・・。 めっちゃ多いですよね、条件が・・・。 |