MicrosoftAccessでは、テーブルに格納済みの情報を目的に応じて取り出す際、「あれと、これと、その項目も見たい」という風に、一度に抽出する条件の数を追加できる。
「または」とする抽出条件を「OR条件」と呼ぶのに対し、
抽出条件を併用する今回のケースは「AND条件」と呼ばれるらしい。
そのAND条件、MicrosoftAccessのSQLにおいて、いくつまでなら指定OKか?
Accessを長年極めている先人たちの間ではカリスマ的存在らしい、ある有名な先生の記事によると
「ANDの数は99、つまり追加できる抽出条件は100までかな」
と想定されておられたので今回、そのお話を確かめるべく、
自作ファイル内に115個のフィールド入りテーブルを新設し、
実験してみました。暇人だな。
アニメ配信数が現時点で115話。実証実験の材料にはピッタリ。
ただ、タテ並び(レコード)単位のデータをヨコ並び(フィールド)単位に置き換える作業が必要で、Accessの場合、すんなりとはいかない。
Excelエクスポート&インポート機能をフル活用し、ExcelとAccessを行ったり来たり。
Excelのデータは、Accessのレコードにまんまコピペできるけどコツが必要。
レコード端っこの「*」マークをつかんでレコードを全選択してから貼付。
うっかり貼る位置がずれてカーソルを中途半端に動かしてしまうと、
画面を閉じたくても、Accessが「まだ入力は済んでいませんよ」と、
ユーザーの行動をいちいち阻んできたりする。そして魔のEscキー鬼リピ。
Accessを長年愛用しているユーザーと、こういう小さなストレスの積み重ねで離脱するユーザーの相違って、後者の努力とか能力が足りないわけではなく、恐ろしく気が長いか、PCヲタか(いい意味で)の違いだと思うわけであります。
検証の元となるテーブル開始
続く
さらに続く
さらにさらに続く
まだ続きがある
まだまだ続きがある
終わらない
終わりがぜんぜん見えない
もうそろそろいいのでは
やっと終わった
テーブルの次はクエリ
当初は、気になる者同士CH002(ちびメカ)とCH006(ちびモスラ)カップルの同時出演データを抽出しようと試みたが、うまくいかず断念。
ちなみに、抽出条件を指定する際に全フィールド追加機能を用いるのもダメ。
CH001(ちびゴジラ)を抽出条件とし、115の同条件を追加していく。
第1話から
第115話まで
SQLはこんな感じ。
長ーーーいコードが完成。
デザインビュー・SQLビューともに、エラーが発報されることはなかったが
データシートビューに切り替えることができなかった。
115フィールドの読み込みはさすがに無理があったかなと反省。
第115話めまでを、第100話めまでに減らして同じ実験をしてみたけど
結果は同じ。
結局、実験は失敗に終わりました。
デザインビュー画面上ではフィールド数を115まで追加できたんだけど、
その後100までデータを減らしても、Accessが読み込むことはできなかった。
カリスマ先生による「100まで追加OK」説の真相は如何に。
調べていたらAIがしゃしゃり出てきて、「100までしか追加できないのは昔の話。現在のAccessなら200でも300でもいける」などと豪語していたが、いずれの説も今回の実験では、実現できなかったということになる。
いずれにせよ、ちゃんと自分の手を動かして確かめてみることが大切。