Access で普通に join を使うと、2つまでしか結合できません。 が、下のように結合した表を括弧で囲んでやり、それを1つの表としてやると、 3つ以上の表を結合できます。 SELECT TA.*,TB.*,TC.* FROM ( TA LEFT JOIN TB ON ( TA.b = TB.id ) ) LEFT JOIN TC ON ( TA.c = TC.id ) ;
データベースを使ったシステムを開発しているとよく本テーブルからデータを抽出して、ワークテーブルで編集してまた本テーブルに格納するなんてことをやるんですが、そんなとき2つのテーブルを比較して、データがあれば更新なければ追加といったことをします。 例えば次のようなテーブルがあったとします。 T_Animals(本テーブル) 4:サル → 4:キツネザル に変更 9:カバを追加 この更新と追加を本テーブルに反映させるにはクエリで次のようにやります。 ■あれば更新 UPDATE T_Animals AS T1 INNER JOIN W_Animals AS T2 ON T1.ID = T2.ID SET T1.AnimalName = T2.AnimalName; ■なければ追加 INSERT INTO T_Animals ( ID, AnimalName ) SELECT T2.ID, T2.A
SQL「LEFT JOIN」を使って、3つ以上の表を結合させる方法 AccessVBA で普通に join を使うと、2つまでしか結合できません。 が、下のように結合した表を括弧で囲んでやり、それを1つの表としてやると、 3つ以上の表を結合できます。 ※テーブル名:TA,TB,TC ※フィールド名:b,c,id ※「TAテーブル」の全レコードに、 「TAテーブルのbフィールド」と「TBテーブルのidフィールド」が一致する「TBテーブル」のレコード、 「TAテーブルのcフィールド」と「TCテーブルのidフィールド」が一致する「TCテーブル」のレコードを 結合させる SELECT TA.*,TB.*,TC.* FROM( TA LEFT JOIN TB ON ( TA.b = TB.id ) ) LEFT JOIN TC ON ( TA.c = TC.id ) ; また、中学生?のころに習った
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く