質問: storage」ではないが、「開館日 is null or 開館日 > date」である ~~~~~~~ という認識で正しいでしょうか?
回答: >1 「ではないが」の取りようにも思うのですが、 ``` tSql = tSql & "where 管轄 = 1" tSql = tSql & "and not (水族館ID =" & bench & "and 都道府県ID = " & storage & ")" tSql = tSql & "and (開館日 is null or 開館日 > " & date & ")" ``` の部分は、以下の条件をすべて満たすレコードを抽出する、です。 * 管轄 = 1 * 水族館ID = bench 且つ 都道府県ID = storage ではない * 開館日が設定されていないか、もしくは、開館日が date 以降である 質問用に SQL を変えていると思うので、ID の意味合いは微妙ですが、指定された bench と storage に該当するレコードは抽出の対象外、ということになります。 長ったらしく書きましたが、多分、id:moon-fondu さんの認識通りなんじゃないかと想像します。 >2 with ステートメントの内側にあるドットから始まる表記は、with で指定した変数が補われると思ってください。 With aquarium の内側にあるので、.Fields(0) は、aquarium.Fields(0) と読み替えます。 # タイプ量を少なくするための文法だと思ってください >3 実物が分からないと何とも言えないのですが、DMax 関数は、ヒットしたレコードの一部が Null の場合には、それを無視するのですが、 * 全てのレコードで、そのフィールドが Null だった場合 * ひとつも該当レコードが無かった場合 には、Null を返します。 # 日本語のページは、自動翻訳がおかしいので英語のページの URL にしています 扱っているシステムで、それを満たす検索条件を指定できるのかどうか分かりませんが、そういったケースを考慮してのコードだろうかと思います。