*ブログに戻る →ここ です。
ANYサブクエリ
条件に一致する値を他のテーブルのカラムから複数ANY探し出す。 free91
Thursday,August,1,2013 今回2つのデータベースdbを使う sadachika_shop kittaka_shop 以下の二つのテーブル名 sadachi_newcustomer kitta_customer ○特定のデータベース内のテーブル SHOW TABLES FROM sadachika_shop; SHOW TABLES FROM Kittaka_shop; ○テーブル設定メモ VARCHAR型なら、unique その他のオプション default 'データなし', default 0, not null(データなし を許さない) INT型なら、primary key ○テーブルを作る ↓データベース名 ↓テーブル名 ↓カラム名 ↓VARCHAR型(文字を格納する型) mysql> create table sadachika_shop.sadachi_customer (sada_id int not null primary key, sada_name varchar(10) default '氏名データなし'); Query OK, 0 rows affected (1.49 sec) ↑INT型(数字) ↑プライマリー(重複を許さない) ↑デフォルト(データが格納されなければ表示されるメッセージ) mysql> create table Kittaka_shop.kitta_newcustomer (kit_id int not null primary key, kit_name varchar(10) default '氏名データなし', kit_d date); Query OK, 0 rows affected (0.30 sec) ○カラムの構造を見る ↓データベース名 ↓テーブル名 mysql> show columns from sadachika_shop.sadachi_customer; Field Type Null Key Default Extra sada_id int(11) NO PRI NULL sada_name varchar(10) YES 氏名データなし 2 rows in set (0.52 sec) mysql> show columns from Kittaka_shop.kitta_newcustomer; Field Type Null Key Default Extra kit_id int(11) NO PRI NULL kit_name varchar(10) YES 氏名データなし kit_d date YES NULL 3 rows in set (0.17 sec) ○値を入力する mysql> insert into sadachika_shop.sadachi_customer values(1, '長谷川'),(2, '稲垣'),(3, '定近'), ->(4, '橘高'),(5, '平山'),(6, '藤原'), (7, '松本'),(8, '小林'), ->(9, '三谷'),(10, '坂本'),(11, '楠'),(12, '中島'); Query OK, 12 rows affected (0.13 sec) Records: 12 Duplicates: 0 Warnings: 0 mysql> insert into Kittaka_shop.kitta_newcustomer values(1, '山田',20130801),(2, '藤原',20130801),(3, '渡辺',20130801), ->(4, '坂本',20130801),(5, '船越',20130801),(6, '安藤',20130801), (7, '平山',20130801),(8, '高垣',20130801), ->(9, '定近',20130801),(10, '橘高',20130801),(11, '山脇',20130801),(12, '三谷',20130801); Query OK, 12 rows affected (0.05 sec) Records: 12 Duplicates: 0 Warnings: 0 ○テーブルの中身の表示 mysql> select * from sadachika_shop.sadachi_customer; sada_id sada_name 1 長谷川 2 稲垣 3 定近*重複 4 橘高*重複 5 平山*重複 6 藤原*重複 7 松本 8 小林 9 三谷*重複 10 坂本*重複 11 楠 12 中島 mysql> select * from Kittaka_shop.kitta_newcustomer; kit_id kit_name kit_d 1 山田 2013-08-01 2 藤原*重複 2013-08-01 3 渡辺 2013-08-01 4 坂本*重複 2013-08-01 5 船越 2013-08-01 6 安藤 2013-08-01 7 平山*重複 2013-08-01 8 高垣 2013-08-01 9 定近*重複 2013-08-01 10 橘高*重複 2013-08-01 11 山脇 2013-08-01 12 三谷*重複 2013-08-01 ○○データの取得 ○○「kitta_newcustomer」テーブルの「kit_name」カラムの値が「sadachi_customer」テーブルの「sada_name」カラムに格納されている値を探す。 ↓データベース名 ↓テーブル名 mysql> select * FROM sadachika_shop.sadachi_customer -> WHERE sada_name = ANY (select kit_name FROM Kittaka_shop.kitta_newcustomer); ↑カラム名 ↑ANYは、条件に該当する複数の値を探す sada_id sada_name 3 定近 4 橘高 5 平山 6 藤原 9 三谷 10 坂本
* 参考にしたサイトは→ こちら です。
これは赤色の文字例です。
これは青色の文字例です。