![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
![](http://oshiete.xgoo.jp/images/v2/common/profile/M/noimageicon_setting_01.png?e8efa67)
以下参考書からです。
◎たくさんのテーブルのデータを使って抽出する
------------------------------------------
例題: テーブル[tb]][tb1][tb3]には、共通の値を持ったカラム[bang]があります。
ではカラム[bang]をキーにして、売上情報テーブル[tb]に
社員情報テーブル[tb1]と社員出身県情報テーブル[tb3]を結合し、
[社員番号](テーブル[tb]の[bang])、[売上](テーブル)[tb]の[uria])、
[氏名](テーブル[tb1]の[nama])、「出身県」(テーブル[tb3]の[ken]
の4つを表示捨てみましょう
以上わかりにくいと思いますので
下記が分かりやすいと思います。
テーブル[tb]][td1][td3]には、共通の値を持ったカラム[bang]があります。
ではカラム[bang]をキーにして、
{「tb」のカラムと[bang][uria]」}と{「tb1」のカラムと[nama] }
と{「tb3」のカラムと[ken] }を内部結合する。
▶実行前の売上情報テーブル「tb」
+------+------+------+
| bang | uria | tuki |
+------+------+------+
| A103 | 101 | 4 |
| A102 | 54 | 5 |
| A104 | 181 | 4 |
| A101 | 184 | 4 |
| A103 | 17 | 5 |
| A101 | 300 | 5 |
| A102 | 205 | 6 |
| A104 | 93 | 5 |
| A103 | 12 | 6 |
| A107 | 87 | 6 |
+------+------+------+
▶ 実行前の社員情報テーブル[tb1]
+------+------+------+
| bang | nama | tosi |
+------+------+------+
| A101 | 佐藤 | 40 |
| A102 | 高橋 | 28 |
| A103 | 中川 | 20 |
| A104 | 渡辺 | 23 |
| A105 | 西沢 | 35 |
+------+------+------+
▶実行前の社員出身県情報テーブル「tb3」
+------+----------+
| bang | ken |
+------+----------+
| A101 | 東京都 |
| A102 | 埼玉県 |
| A103 | 神奈川県 |
| A104 | 北海道 |
| A105 | 静岡県 |
+------+----------+
実行結果
mysql> SELECT tb.bang,tb.uria,tb1.nama,tb3.ken FROM tb
-> JOIN tb1 USING(bang)
-> JOIN tb3 USING(bang)
-> ;
+------+------+------+----------+
| bang | uria | nama | ken |
+------+------+------+----------+
| A103 | 101 | 中川 | 神奈川県 |
| A102 | 54 | 高橋 | 埼玉県 |
| A104 | 181 | 渡辺 | 北海道 |
| A101 | 184 | 佐藤 | 東京都 |
| A103 | 17 | 中川 | 神奈川県 |
| A101 | 300 | 佐藤 | 東京都 |
| A102 | 205 | 高橋 | 埼玉県 |
| A104 | 93 | 渡辺 | 北海道 |
| A103 | 12 | 中川 | 神奈川県 |
+------+------+------+----------+
----------------------------------------
以上ですが
ここで言う作業の流れは3つ分かれるみたいですが
下記①の作業の説明がうまく表現できません
よろしくお願いいたします。
① SELECT tb.bang,tb.uria,tb1.nama,tb3.ken FROM tb テーブル名1の?
② JOIN tb1 USING(bang) → テーブル名2 結合条件
③ JOIN tb3 USING(bang) → テーブル名3 結合条件
No.1ベストアンサー
- 回答日時:
何を質問したいのかよく分かりません。
説明が上手く表現出来ないって何ですか?
SELECT tb.bang,tb.uria,tb1.nama,tb3.ken の部分のクエリの意味がわからないということですか?
例示のクエリで説明するなら、まず下記を実行してみてください。
SELECT * FROM tb JOIN tb1 USING(bang) JOIN tb3 USING(bang);
この実行結果の中で、どのカラムを表示するかを指定しているのが、『tb.bang,tb.uria,tb1.nama,tb3.ken』の箇所ですが、こういう事が分からないという主旨でしょうか?
ありがとうございます。
すみません
手が空き次第ちゃんとご回答します。
解説:複数のテーブルを内部結合する場合
・ 主なコマンド
ⅰ SELECT:選択する Ⅱ FROM:何何から Ⅲ JOIN:加入 Ⅳ USING(ユージング):使用する
実行コマンド解説
① SELECT tb.bang,tb.uria,tb1.nama,tb3.ken FROM tb➡ ①SELECTは検索のSQLの最初に書きます、次はカンマ区切りで検索したい物(tb.bang,tb.uria,tb1.nama)を書きます、FROM の後に検索対象のテーブル名を書きます、
② JOIN tb1 USING(bang)➡②③JOINの後には結合するテーブル名と結合条件を書きます。
③ JOIN tb3 USING(bang)
mysql> SELECT * FROM tb JOIN tb1 USING(bang) JOIN tb3 USING(bang);
+------+------+------+------+------+-----+
| bang | uria | tuki | nama | tosi | ken |
+------+------+------+------+------+-----+
| A103 | 101 | 4 | 中川 | 20 | 神奈川県 |
| A102 | 54 | 5 | 高橋 | 28 | 埼玉県 |
| A104 | 181 | 4 | 渡辺 | 23 | 北海道 |
| A101 | 184 | 4 | 佐藤 | 40 | 東京都 |
| A103 | 17 | 5 | 中川 | 20 | 神奈川県 |
| A101 | 300 | 5 | 佐藤 | 40 | 東京都 |
| A102 | 205 | 6 | 高橋 | 28 | 埼玉県 |
| A104 | 93 | 5 | 渡辺 | 23 | 北海道 |
| A103 | 12 | 6 | 中川 | 20 | 神奈川県 |
+------+------+------+------+------+-----+
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
アクセス2010について
-
Excel テーブル内の空白行の削除
-
内部結合で
-
マージレプリケーション
-
ここで言う参考書のエイリアス...
-
MySQLを勉強中ですが、作業の内...
-
HiRDBのPURGEとDROPの違い
-
レコードの削除で delete from ...
-
男性と2人で飲食店に行きテーブ...
-
ROWNUMでUPDATEをしたいのです...
-
SQL*LoaderでCSVから指定した列...
-
L2SWはARPテーブルを持っている?
-
Accessのテーブルデータを一気...
-
SQliteの日付検索について
-
お金持ちのテーブル
-
Oracleで上書きImportはできま...
-
Accessでデータシートに同じデ...
-
テーブルに存在しない列をselec...
-
アクセスのリンクテーブル一覧...
-
飲み会で、座敷orテーブルどち...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excel テーブル内の空白行の削除
-
大量のレコードを削除する方法
-
HiRDBのPURGEとDROPの違い
-
アクセスのクエリでレコード削...
-
トリガって、自分自身のテーブ...
-
ACCESSのマクロでテーブルのデ...
-
列のDEFAULT設定を削除するコマ...
-
アクセス2010について
-
Access2000の削除クエリで消し...
-
mysqlで間接クエリー実行させた...
-
物理削除と論理削除、どっちが...
-
ワークテーブルなのに自動で削...
-
削除フラグってどうなんでしょう?
-
SQLSERVERで関数作成?
-
すべてのテーブル削除
-
CSVファイルから一括して削除す...
-
【ACCESS2000】 VBAでリレーシ...
-
テーブルが削除できない
-
リレーションについて
-
ACCESSのデータ入力時の「メモ...
おすすめ情報
ありがとございました。
あとで気付きました!
たいした質問ではないので
無視してください。
今後とも宜しくお願いします。