見出し画像

【ACCESS SQL】目に見えないクエリを想像することで、抽出可能なデータ

YouTubeでも紹介しています。是非ご覧ください。

データベースは、VBAではなく、いかにデータを抽出するかです。

目に見えない、架空のクエリを想像できれば、さらに、データ抽出が楽になります。

目に見えないクエリを想像することで、抽出可能なデータ



こんにちは。伊川(@naonaoke)です。

前回は、SQL文の基礎中の基礎を紹介しました。

 

また、前回紹介した書籍のChapter3で、LIMIT句というのが登場します。

 

結論から言いますと、ACCESSでは、LIMIT句は、利用できません。

なので、LIMIT句の代替のコードを利用します。

少し面倒な作業が増えます。

もちろん、このような複雑なことをしなくても、今回のサンプルでは、データ抽出ができます。

 

しかし、この面倒な作業を、覚えることで、複雑なデータ抽出ができるようになります。

 

VBAよりも、ずっと面白い内容です。

このブログはこんな人にお勧め


ACCESSでクエリを勉強している人

クエリのスキルに限界を感じている人

SQLを勉強している人

 


このブログを、読み終わるころには・・・・



初めて、競馬で、データ抽出で、壁に当たった内容でした。

デザインビューを見ても到底、その時の私には、理解できない内容でした。

しかし、目に見えないクエリが、どのように作動しているのかを、このブログで理解できるようになります。


上位2つのレコードを抽出したい

この、テーブルから、上位2つのレコードを抽出します。
 
つまり、伊川直助、伊川直子を、抽出します。

このような状態にします。

普通は、これで完了です。

もちろん、これでも正解ですが、架空のクエリを作成して、抽出をします。

LEFT JOIN、左外部結合を利用して、抽出します。

LEFT JOIN(左外部結合) 作業手順 その1 MT_testから、上位2つのレコードを定義する

イメージは、こんな感じです。
SELECT TOP 2 * FROM MT_test 
この意味は、MT_testの、上位2つのレコードを定義する書き方です。
 
前回も言いましたが、SELECT~ FROM ~の基本系です。
まだ、ここには、記載されていませんが、目に見えないクエリは、t2が付いているクエリです。
SELECT TOP 2 * FROM MT_test 
この文章から、下記のクエリを想像するのです。

 

LEFT JOIN(左外部結合) 作業手順 その2 MT_testと、t2を結合する


LEFT JOIN (SELECT TOP 2 * FROM MT_test) AS t2

ON MT_test .ID = t2.ID

 

このSQL文の意味は、

左外部結合しなさい。

MT_testのIDと、SELECT TOP 2 * FROM MT_test(目に見えないクエリ)のID

という意味です。

 

 

LEFT JOIN(左外部結合) 作業手順 その3 MT_testと、t2の外部結合の結果

この赤いところが、左外部結合されています。

t2に関しては、MT_testの、上位2つのレコードしか定義していないので、3~5は、Nullになります。

 

 

LEFT JOIN(左外部結合) 作業手順 その4 WHEREで、空白以外を抽出


WHERE t2.ID IS NOT NULL;

 

これも前回紹介した、SQL文の基本中の基本です。
このように抽出することができます。

 


LEFT JOIN(左外部結合) 作業手順 その5 所管

これは、私が、毎週、かかわっている競馬のデータです。
 
抽出条件
数値、1位、2位の馬が、1枠であること
かつ、同一グループ(同一レース)であること

この条件で、抽出するには、

今回、紹介した、架空のクエリを作成します。

競馬も、悪い事ばかりではありません。

 

ここがポイント


前回と、今回の、動画、ブログを読んで、面白いと思った人は、

本気で、SQLの勉強をした方がいいです。

VBAより、多分、お金になります。

間違いないです。

ということで、少し難しめのクエリの書籍も購入しました。

SQLは、本当に面白いです。

まとめ


架空のクエリを作成できるようになり、また、データ抽出の幅が広がりました。

ぜひとも、架空のクエリを作成できることに感動してください。

今回も最後まで読んでいただきありがとうございました。

サンプルファイル


私のホームページでも販売しています。このようなファイルは、全部で、300ファイル前後ありますが、総ダウンロード数は、10,000件を、超えました。10,000件超えてから、面倒なので、カウントしていないです。

勉強したい方、会社の実務で利用したい方にお勧めです。

はっきり言いますが、ネットで調べる時間を考えたら、購入したほうが、時間の節約になります。

まして、ネットのコードは、作動するとは限りません。

料金は、200円です。

よろしくお願いします。

ここから先は

58字

¥ 200

よろしければサポートをお願いします。いただいたお金に関しては、書籍の購入に充て、より良い情報を皆様に提供します。