3つのテーブルからそれぞれ2つのカラムを選んで結合し重複の値を1つとして数え表示する
3つのテーブルからそれぞれ2つのカラムを選んで結合し全て表示する free86
Tuesday,July,30,2013 今回3つのデータベースdbを使う sadachika_shop kittaka_shop hirayama_shop ○データベースを作る mysql> create database hirayama_shop; Query OK, 1 row affected (0.05 sec) ○データベースを見る MySQL> show databases; Database hirayama_shop *新しく作成された Kittaka_shop *今回はこのdbを使う sadachika_books sadachika_shop *今回はこのdbを使う ○特定のデータベース内のテーブル SHOW TABLES FROM sadachika_shop; sadachi_user*このテーブル名を使いたいのでテーブル名を変更して、別途新設する ○テーブルの名前を変更する ↓新しいテーブル名 mysql> alter table sadachika_shop.sadachi_user rename to sadachika_shop.sadachi_lessonuser; Query OK, 0 rows affected (0.14 sec) ○テーブルの中身の表示 mysql> select * from sadachika_shop.sadachi_user; *表示されない mysql> select * from sadachika_shop.sadachi_lessonuser; *表示された テーブルを作る mysql> create table sadachika_shop.sadachi_user (sada_username varchar(10), sada_address varchar(10)); Query OK, 0 rows affected (0.11 sec) mysql> create table Kittaka_shop.kitta_request (kit_name varchar(10), kit_address varchar(10), kit_d date); Query OK, 0 rows affected (0.01 sec) mysql> create table hirayama_shop.hiraya_seminar (hira_sid int, hira_name varchar(10), hira_address varchar(10)); Query OK, 0 rows affected (0.00 sec) 値の重複を避けるには、プライマリキーやユニークを使うが、今回は苗字が同一だったり、建物が同じ可能もあるので使うのを避ける int(11) not null primary key varchar(20) unique mysql> insert into sadachika_shop.sadachi_user values('鈴木', '大阪府大阪市'),('佐藤', '岡山県岡山市'),('定近', '広島県府中市'), ->('定近', '東京都荒川区'),('横山', '東京都荒川区'); Query OK, 5 rows affected (0.06 sec) Records: 5 Duplicates: 0 Warnings: 0 mysql> insert into Kittaka_shop.kitta_request values('鈴木', '大阪府大阪市',20130730),('小林', '東京都荒川区',20130730), ->('佐藤', '岡山県岡山市',20130730),('定近', '広島県府中市',20130730),('橘高', '広島県笠岡市',20130730), ->('平山', '福岡県福岡市',20130730),('本田', '東京都荒川区',20130730),('定近', '東京都荒川区',20130730); Query OK, 8 rows affected (0.03 sec) Records: 8 Duplicates: 0 Warnings: 0 mysql> insert into hirayama_shop.hiraya_seminar values(1, '佐藤', '岡山県岡山市'),(1, '定近', '広島県府中市'),(1, '定近', '東京都荒川区'), ->(2, '橘高', '広島県笠岡市'),(2, '平山', '福岡県福岡市'),(2, '松田', '福岡県福岡市'); Query OK, 6 rows affected (0.02 sec) Records: 6 Duplicates: 0 Warnings: 0 ○テーブルの中身の表示 mysql> select * from sadachika_shop.sadachi_user; sada_username sada_address 鈴木 大阪府大阪市*重複 佐藤 岡山県岡山市*重複 定近 広島県府中市*重複 定近 東京都荒川区 *住所別重複 横山 東京都荒川区 5 rows in set (0.00 sec) mysql> select * from Kittaka_shop.kitta_request; kit_name kit_address kit_d 鈴木 大阪府大阪市 2013-07-30*重複 小林 東京都荒川区 2013-07-30 佐藤 岡山県岡山市 2013-07-30*重複 定近 広島県府中市 2013-07-30*重複 橘高 広島県笠岡市 2013-07-30 *重複 平山 福岡県福岡市 2013-07-30 *重複 本田 東京都荒川区 2013-07-30 定近 東京都荒川区 2013-07-30 *住所別重複 8 rows in set (0.00 sec) mysql> select * from hirayama_shop.hiraya_seminar; hira_sid hira_name hira_address 1 佐藤 岡山県岡山市*重複 1 定近 広島県府中市*重複 1 定近 東京都荒川区 *住所別重複 2 橘高 広島県笠岡市 *重複 2 平山 福岡県福岡市 *重複 2 松田 福岡県福岡市 6 rows in set (0.00 sec) ○○○3つのテーブルからそれぞれ2つのカラムを選んで結合し重複の値を1つとして数え表示する mysql> select sada_username, sada_address FROM sadachika_shop.sadachi_user -> UNION SELECT kit_name, kit_address FROM Kittaka_shop.kitta_request -> UNION SELECT hira_name, hira_address FROM hirayama_shop.hiraya_seminar; sada_username sada_address 鈴木 大阪府大阪市 佐藤 岡山県岡山市 定近 広島県府中市 定近 東京都荒川区 横山 東京都荒川区 小林 東京都荒川区 橘高 広島県笠岡市 平山 福岡県福岡市 本田 東京都荒川区 松田 福岡県福岡市 10 rows in set (0.00 sec) ○○長文 mysql> select sadachi_user.sada_username, sadachi_user.sada_address FROM sadachika_shop.sadachi_user -> UNION SELECT kitta_request.kit_name, kitta_request.kit_address FROM Kittaka_shop.kitta_request -> UNION SELECT hiraya_seminar.hira_name, hiraya_seminar.hira_address FROM hirayama_shop.hiraya_seminar; ○○○3つのテーブルからそれぞれ2つのカラムを選んで結合し全て表示する mysql> select sada_username, sada_address FROM sadachika_shop.sadachi_user -> UNION ALL SELECT kit_name, kit_address FROM Kittaka_shop.kitta_request -> UNION ALL SELECT hira_name, hira_address FROM hirayama_shop.hiraya_seminar; sada_username sada_address 鈴木 大阪府大阪市 佐藤 岡山県岡山市 定近 広島県府中市 定近 東京都荒川区 横山 東京都荒川区 鈴木 大阪府大阪市*重複 小林 東京都荒川区 佐藤 岡山県岡山市*重複 定近 広島県府中市*重複 橘高 広島県笠岡市 平山 福岡県福岡市 本田 東京都荒川区 定近 東京都荒川区*重複 佐藤 岡山県岡山市*重複 定近 広島県府中市*重複 定近 東京都荒川区*重複 橘高 広島県笠岡市*重複 平山 福岡県福岡市*重複 松田 福岡県福岡市 19 rows in set (0.06 sec)
* 参考にしたサイトは→ こちら です。
これは赤色の文字例です。
これは青色の文字例です。