2021年6月17日木曜日

ACCESS(もしくはSQL)で2つのテーブルの片方にしかないデータを抽出するまでの物語

 ACCESSで2つのテーブル(TABLE_AとTABLE_B)が同じKEYフィールドを持つ場合、片方にしかないKEYフィールドのデータを抽出するには、どうすれば良いのか?
AleftOuterJoinBonA.KEY=B.KEYwhereB.KEY=NULL
 【テーブルAにしかないデータを抽出】





 例えば、TABLE_Aにのみ存在するKEYフィールドのデータを抽出するには、SQLビューで、SELECT  * FROM TABLE_A LEFT OUTER JOIN TABLE_B ON TABLE_A.KEY = TABLE_B.KEY WHERE TABLE_B.KEY = NULLと打ち込めで、クエリを作ればいいのだ。
 このSELECT * を使うと、テーブルTABLE_AからKEY が TABLE_Bにはない値を持つデータ(レコード。即ち、行)を抽出してくれる訳だ。


 この=NULLが使いこなせるようになると(この壁を乗り越えるのは意外と簡単ではないが)、ACCESS(SQL)名人に向けて、「ワンランク昇格」だ。いや、「スリーランク昇格」かもしれない。

 ここで、一息、レンチンのとうもろこし。トウモロコシの薄皮を1枚残し、塩水を振りかけて、600度で片側2分、ひっくり返して、600度でもう2分だ。とても美味しいとうもろこしの出来上がりだ。美味しい。もう水から茹でるなんてしない。