*ブログに戻る →ここ です。
1,ANY
2,ALL句[以外をさがす<>]
3,EXISTS句
ANYとALLとEXISTSの違いが分らない
ほとんど違わない気がしますが・・・理解できないよ〜 メモします free93
Friday,August,2,2013 PHPのおさらいを優先したいので、理解できていないが流します 今回2つのデータベースdbを使う sadachika_shop kittaka_shop 以下の二つのテーブル名 sadachi_newcustomer kitta_customer ○特定のデータベース内のテーブル SHOW TABLES FROM sadachika_shop; SHOW TABLES FROM Kittaka_shop; ○テーブルの中身の表示 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 ○○ALL句 データの取得[以外をさがす<>]該当しないものを選び出す。 ○○「kitta_newcustomer」テーブルの「kit_name」カラムの値が「sadachi_customer」テーブルの「sada_name」カラムに格納されている値[以外<>]を探す。 ↓データベース名 ↓テーブル名 mysql> select * FROM sadachika_shop.sadachi_customer -> WHERE sada_name <> ALL (select kit_name FROM Kittaka_shop.kitta_newcustomer); ↑カラム名 ↑ALLは?機能が分らない sada_id sada_name 1 長谷川 2 稲垣 7 松本 8 小林 11 楠 12 中島 失敗○ データの取得[ALLで同一の値を探し出す= 計画からして間違ってるのかも?]? 「kitta_newcustomer」テーブルの「kit_name」カラムの値が「sadachi_customer」テーブルの「sada_name」カラムに格納されている値を探す。 ↓データベース名 ↓テーブル名 mysql> select * FROM sadachika_shop.sadachi_customer -> WHERE sada_name = ALL (select kit_name FROM Kittaka_shop.kitta_newcustomer); ↑カラム名 ↑ALLは、条件に該当する複数の値を探す Empty set (0.00 set) *イコールの計算式では失敗している、何が失敗しているのかもよく分らない? ○○EXISTS句 ○○いまいちよく理解できていませんANY句と同じなんですけれど・・・PHPを復習したいので流そう mysql> select * from sadachika_shop.sadachi_customer WHERE EXISTS -> (select kit_name FROM Kittaka_shop.kitta_newcustomer WHERE sadachi_customer.sada_name = kitta_newcustomer.kit_name); sada_id sada_name 3 定近 4 橘高 5 平山 6 藤原 9 三谷 10 坂本 *ANY句を使った時と同じ回答 *計算式が存在しないところに注目すべき、存在してるな?ANY句でよくないか? 失敗○mysql> select * from sadachika_shop.sadachi_customer WHERE EXISTS -> (select sada_name FROM Kittaka_shop.kitta_newcustomer WHERE sadachi_customer.sada_name = kitta_newcustomer.kit_name); ↑これじゃERRORだよね
* 参考にしたサイトは→ こちら です。
これは赤色の文字例です。
これは青色の文字例です。