• ベストアンサー

検索結果からさらに検索

検索結果からさらに検索したいのですが。 テーブルAの検索結果500の中からさらに、テーブルBの検索結果を絞り込みたいのですが。 そのような事は出来ますか?

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

  • ベストアンサー
回答No.2

副問い合わせ(サブクエリ)を使うのが簡単ですが、 MySQLの場合は最新のバージョンを利用しないと、 副問い合わせは使えません。 もし、最新バージョンをお使いじゃない場合は面倒 ですが、1回目の問い合わせ結果をテンポラリー テーブルに格納して、そのテーブルを元にもう一度 問い合わせを行います。 たとえば次のような感じです。 CREATE TEMPORARY TABLE tmp_table SELECT * FROM テーブル名 WHERE 条件; SELECT * FROM tmp_table WHERE 新しい条件; どういうテーブルを使っていて、 どういう問い合わせをしたいのかちょっと解らない のではっきりとした回答は出来ませんが、 ほとんどのケースでこのような方式やサブクエリを 使わないでも1回のSELECT文で実現できることが多いですよ。(効率はともかく・・・)

参考URL:
http://dev.mysql.com/doc/mysql/ja/CREATE_TABLE.html
全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (1)

  • nanimania
  • ベストアンサー率36% (34/93)
回答No.1

副問い合わせを使用すれば可能です。 テーブルAの検索結果500を、 テーブルA’とすれば可能ですよ。

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

関連するQ&A

  • 検索結果の出力方法について

    "001","Aさん","ぶどう", "001","Aさん","みかん", "001","Bさん","バナナ", "001","Bさん","イチゴ", "001","Cさん","スイカ", "001","Cさん","メロン", "002",・・・ "003",・・・ 例えば上記の様な検索用のログファイルがあり、”001”で検索した場合、今のところ極々単純に ━━━━━━━ │Aさん|ぶどう| ━━━━━━━ |Aさん|みかん| ━━━━━━━ |Bさん|バナナ| ━━━━━━━ |Bさん|イチゴ| ━━━━━━━ |Cさん|スイカ| ━━━━━━━ |Cさん|メロン| ━━━━━━━ ↑という感じで結果を出力させているのですが、 これを ━━━━━━━ |Aさん|ぶどう| |    |みかん| ━━━━━━━ |Bさん|バナナ| |    |イチゴ| ━━━━━━━ |Cさん|スイカ| |    |メロン| ━━━━━━━ 上記のように、同じ名前の結果が複数ある場合、それを統一して結果を表示させたいと考え、いろいろと悪戦苦闘してみましたが、どうしてもうまくいきません。 ログファイルには手を加えないという事を前提に、下のテーブルのような出力に なるような、構文の書き方がありましたら、是非教えてください。

    • 締切済み
    • PHP
  • 2つの検索結果を繋げたい

    毎度お世話になります。 2つの異なるテーブルから 同じような結果をselectするのですが 可能ならば一発のSQL文で結果を得たいと考えております。 以下のように繋がった結果を得ることは可能でしょうか? ご教示いただければ幸いです。 宜しくお願いいたします。 A表へのselect結果1 あ | い ------------- (1) | (1) (1) | (1) B表へのselect結果2 あ | い ------------- (2) | (2) (2) | (2) 本来ほしい結果 あ | い ------------- (1) | (1) (1) | (1) (2) | (2) (2) | (2) ※単純に繋がった結果を得られれば満足です。

  • 3テーブルを使い検索結果を表示する

    教えて下さい。 3つのテーブルを使用して検索結果をPHPで表示したいのですが 何度かSELECT文を作成しましたがうまくいきません。教えてください。 DBはMySQLを使っています。 テーブルAの構成 cd--文字型 keycd1--数値型 keycd2--数値型 keycd3--数値型 テーブルAの登録内容 cd  | keycd1 | keycd2 | keycd3 123456   1      2     3 555874   2      4 741852   1 テーブルBの構成 scd--文字型 sname--文字型 テーブルBの登録内容 scd     | sname 123456963214  A商店 896321456987  B商店 555874302158  C商店 テーブルCの構成 kcd--数値型 kcdname--文字型 テーブルCの登録内容 kcd | kcdname  1    野菜  2    魚  3    肉  4    くだもの のようにそれぞれテーブルを作成しています テーブルAより下記のような検索結果にしたいのですが cd   | sname |kcdname|kcdname|kcdname 123456   A商店  野菜  魚    肉 555874   C商店  魚   くだもの snameを抽出する場合テーブルAのcd=テーブルBのscd(左より6桁が同じもの)で抽出したいのですがうまくいきません。 テーブル構成がもともとまちがっているのでしょうか 質問内容が解りづらいかと思いますが宜しくお願いします。

    • ベストアンサー
    • MySQL
  • Access、検索用フォームでのあいまいな検索

    現在、Accessでデータベース作成をしています。 テーブル:  ・テーブルA          ・テーブルB          (A・B間にリレーションシップ設定) クエリ    ・検索クエリ(テーブルA・テーブルBを元に作成) フォーム   ・検索用フォーム(デザインビューでフォーム作成より)          ・検索結果フォーム(検索クエリを元に作成) また、以下のような設定を入力しました。 「検索クエリ」の抽出欄  Like "*" & [Forms]![検索用フォーム]![検索したい名前] & "*"・・(1)  ※検索したい項目、すべての抽出欄に設定済 「検索用フォーム」  検索実行ボタンを作成し、マクロを設定  ・フォームを開く→「検索結果フォーム」  ・フィルタ→「検索クエリ」 上記の設定により、検索用フォームに検索文字を入力することで、その結果を「検索結果フォーム」に反映することができました。 ただ、テーブルAが元になっている項目の抽出欄のみに(1)を入力すると、うまくいくのですが、テーブルBが元になっている項目欄にも (1)を入力しようとすると、検索用フォームからうまく検索することができなくなります。 2つのテーブルを元にしたクエリからは、検索用フォームをつかった複数のOR検索はできないのでしょうか?? ご存知の方、ぜひ教えてください。 よろしくお願いいたします。

  • MS IndexServerの検索結果について

    IndexServerをテスト構築してファイルサーバを検索しているんですが、検索結果にどうも納得いかないというか、わからない部分があります。例えば以下のように 今日は晴れ・・・・A 今日は雨・・・・・B 昨日は晴れ・・・・C という文章が入った3つ(A,B,C)のファイルを検索します 1.“今日は晴れ”というキーワードで検索した場合 検索結果A,B,Cすべて。 2.“今日”というキーワードで検索した場合 検索結果A,Bの2件 3.“晴れ”というキーワードで検索した場合 検索結果A,Cの2件 4.“晴”というキーワードで検索した場合 検索結果0件 という結果になりました。 2と3の結果は納得いきます。でも1.は“今日”と“晴れ”のOR検索をしていますよね。それと、4.に関しては通常ならA,Cが引っ掛るべきじゃないでしょうか?これを説明できる方、いらっしゃいますか?どんなことでも結構なんで意見ください。

  • 意味は同じはずなのに結果が違います。

    SELECT * FROM テーブルA LEFT OUTER JOIN ( SELECT * FROM テーブルB WHERE テーブルB.列X IS NOT NULL) as テーブルB ON テーブルA.列A = テーブルB.列A SELECT * FROM テーブルA LEFT OUTER JOIN テーブルB ON テーブルA.列A = テーブルB.列A WHERE テーブルB.列X IS NOT NULL 上のSQLも下の同じ事をしてると思うのですが 上では検索結果が10件出た場合 下では0件になってしまいます。 SQL自体シンプルで間違っていないと思うのですがなぜでしょうか?

  • access 2000フォーム検索 サブフォームじゃだめ?

    access 2000でフォームにリレーションされたサブフォームを設置したのですが、使う段になってから気づいたのですが、サブフォームの検索できないんですね。 できないというか、リレーションされた結果が表示されるので、その中での検索となってしまう。 フォーム内容が1体多となっている。 テーブルA id name 1 aoki 2 sasaki テーブルAのidとテーブルBのuidはリレーションされている。 テーブルB uid book 1 辞典 2 漫画 1 ノート テーブルAのid1 aokiを表示しているフォームで、テーブルBの「漫画」で検索した際に検索できるようにするにはどうすればいいでしょうか。

  • 二つのファイルを比較して検索結果を知りたいです。

    フォルダAの中には複数のフォルダとファイルがあり 同様に フォルダBの中には複数のフォルダとファイルがあります。 AとBは同じ内容のフォルダやファイルもあれば 更新されてるのもあります。 それを一発でわかるツールや方法やソフトウェアはありますか? 二つのファイルを比較して検索結果を知りたいです。 win8です。

  • 検索結果の画面がおかしい

    Chromeの検索結果の画面がおかしくて困っています。ご支援ください。 PCのChromeのアドレスバーに例えば「11*3=」と入力すると、見慣れた画面(添付のA画面)に計算結果の「33」が一瞬表示されますが、すぐに添付画面のように「11*2」を検索した画面(B画面)に変わってしまい、計算結果がはっきり分かりません。困っています。 計算ではない普通の検索でもA画面に結果が一瞬表示され、すぐにB画面に変わります。 3週間前にWindows11に変えた頃からこうなったようです。 再立ち上げしたり、セーフモード立ち上げしても改善されません。 なお、EdgeではA画面相当しか表示されず、うまくいきます。 Chromeで見慣れたA画面だけが表示されるようにしたいのですが。お助けください。

  • 検索結果の色について

    PHPについて 検索結果があれば、それをテーブルに表示させてテーブルの色を赤くしたいのですが、どういったif文を書けばいいのかが分かりません 教えていただけないでしょうか よろしくお願いします

    • 締切済み
    • PHP