質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
JOIN

これはSQL文のJOINに関するタグです。リレーショナルデータベースシステムの二つ以上のテーブルを結合する際に、この構文が利用されます。

Access

Accessはマイクロソフトによるリレーショナルデータベース管理システムです。オブジェクト指向のアプリケーション作成に対応しており、テーブルや編集をはじめ、クエリ生成、入力フォーム作成、レポート作成など一通りの機能を備えています。

Q&A

解決済

2回答

19832閲覧

複数のJOINの書き方

wakame01

総合スコア12

JOIN

これはSQL文のJOINに関するタグです。リレーショナルデータベースシステムの二つ以上のテーブルを結合する際に、この構文が利用されます。

Access

Accessはマイクロソフトによるリレーショナルデータベース管理システムです。オブジェクト指向のアプリケーション作成に対応しており、テーブルや編集をはじめ、クエリ生成、入力フォーム作成、レポート作成など一通りの機能を備えています。

0グッド

0クリップ

投稿2016/10/18 11:15

###前提・実現したいこと
児童名簿(“T_児童マスタ”テーブル)から兄弟関係を探し出して、新しいフィールドとしたい考えています。
兄弟関係は「電話番号」から判断します。
直す点、改善点をお教えください。

MS Access 2016,2010 環境

以下のコードで「JOIN式はサポートされていません。」とエラーメッセージが発生しました。

###該当のソースコード
SELECT MM.ID, MM.入学年度, MM.学年, MM.[クラス], MM.[クラス内番号],
MM.姓, MM.名, MM.[せい], MM.[めい],
MM.性別, MM.生年月日, MM.電話番号,
MM.市区町村, MM.町域,MM.番地, MM.号, MM.建物名, MM.郵便番号,
MM.地区・常会, MM.下校コース,
MM.父名, MM.父連絡先, MM.父連絡先電話番号,
MM.母名, MM.母連絡先, MM.母連絡先電話番号,
MM.緊急連絡先1, MM.緊急連絡先2, MM.緊急連絡先3,
S1.学年 AS 在学兄弟姉妹クラス1, S1.名 AS 在学兄弟姉妹名1, ←これ と
S2.学年 AS 在学兄弟姉妹クラス2, S2.名 AS 在学兄弟姉妹名2, ←これ と
S3.学年 AS 在学兄弟姉妹クラス3, S3.名 AS 在学兄弟姉妹名3, ←これ
MM.PTA役員, MM.備考, MM.除籍
FROM
(
(
(
T_児童マスタ AS MM
LEFT JOIN T_児童マスタ AS S1
ON (S1.電話番号 = MM.電話番号 AND S1.学年 <> MM.学年)
)
LEFT JOIN T_児童マスタ AS S2
ON (S2.電話番号 = MM.電話番号 AND S2.学年 <> MM.学年 AND S2.学年 <> S1.学年)
)
LEFT JOIN T_児童マスタ AS S3
ON (S3.電話番号 = MM.電話番号 AND S3.学年 <> MM.学年 AND S3.学年 <> S1.学年 AND S3.学年 <> S2.学年)
)
;

###試したこと
・括弧の追加・削除

・以下のJOIN 1回だけなら可
(
T_児童マスタ AS MM
LEFT JOIN T_児童マスタ AS S1
ON (S1.電話番号 = MM.電話番号 AND S1.学年 <> MM.学年)
)

###その他
MySQLでは、上記コードの括弧を取り払ったものを発呼したところ、上手くいきました。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

自己解決

改善点、代案については、こちらで教えていただくことができました。
兄弟関係の抽出 と LIMIT、OFFSETに代わるもの

投稿2016/10/22 03:29

編集2018/10/08 10:07
wakame01

総合スコア12

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

同じテーブルを一つのクエリーで何度も参照するのが難しいのかもしれないので、
クエリーを多段で組んだほうがいいかもしれません。
クエリーの結果をさらにLEFT JOINで連結してクエリーとして、
さらに・・と。

投稿2016/10/19 00:52

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問