Access2003でSQLをかいています。
以下のように書いているのですが、
「結合式がサポートされていません」というエラーが発生します。
対応策をご存知の方、お教えいただけますでしょうか。
使用するテーブルは以下の3つです。
・社員テーブル
・所属テーブル
・判定テーブル
それぞれのテーブルの項目は以下のとおりです。
▼ 社員テーブル
-------------------
個人No
入社年度
▼ 所属テーブル
-------------------
個人No
所属コード
▼ 判定テーブル
-------------------
所属コード
入社年度
判定フラグ
下記のようなSQLを書いています。
---------------------------------------------------------------------
SELECT A.個人No, C.判定フラグ
FROM (社員マスタ A
LEFT JOIN 所属テーブル B
ON (A.個人No = B.個人No))
LEFT JOIN 判定テーブル C
ON (B.所属コード = C.所属コード AND A.入社年度 = C.入社年度)
---------------------------------------------------------------------
最終行の「AND A.入社年度 = C.入社年度」がなければ、SQLは実行できますが
入社年度で条件を絞れないので正しい結果になりません。
LEFT JOIN 句は3テーブル目の条件式で1テーブル目を参照できないということでしょうか?
No.2
- 回答日時:
SELECT D.個人No, C.判定フラグ
FROM [select a.個人No, a.入社年度, b.所属コード from 社員マスタ A
LEFT JOIN 所属テーブル B
ON (A.個人No = B.個人No)]. as D
LEFT JOIN 判定テーブル C
ON (D.所属コード = C.所属コード AND D.入社年度 = C.入社年度)
ではだめですか?
ご回答いただき、ありがとうございます。
教えていただいた方法でもできました!
[]で囲っている形ははじめて見たので勉強になりました。
No.1ベストアンサー
- 回答日時:
> 条件式で1テーブル目を参照できないということでしょうか?
については分かりません。
以下のように変形して、C と結ぶのを 1つにしてみるのはどうでしょうか。
(未検証)
SELECT TA.個人No, C.判定フラグ FROM
(SELECT A.*, B.所属コード FROM 社員マスタ AS A
LEFT JOIN 所属テーブル AS B
ON (A.個人No = B.個人No)) AS TA
LEFT JOIN 判定テーブル AS C
ON (TA.所属コード = C.所属コード AND TA.入社年度 = C.入社年度)
教えていただいた方法で解決しました!
結合したテーブルを新しい名前で定義して、さらに結合するという感じ…ですよね。
ありがとうございました!!
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Oracle SQL update方法 2 2022/06/22 14:07
- MySQL PhpMyAdminで作成して実行せよ。 東京23区を、皇居を中心とした4つのエリア(南東, 南西, 1 2023/06/11 11:58
- Oracle 下記のsqlで取得されるレコード以外を取得する方法ありますでしょうか。 SELECT B.番号, B 2 2022/04/20 23:21
- SQL Server [SQLServer] テーブル名からカラム名を取得する 1 2022/08/23 21:20
- Oracle sqlで質問です。 idを元にidに紐付くデータで住所コードがjpのみのデータ以外のidを取得したい 4 2023/03/20 17:41
- Oracle 質問です。 下記のテーブルとデータがあり、 取得想定結果のように出力したいです。 下記のsqlだと0 2 2023/05/23 19:10
- その他(データベース) 更新クエリをリンクデータベーステーブルに実行し実行時エラー3362固有インデックスに重複する値が含ま 1 2022/09/21 11:44
- SQL Server ACCESSで表が作りたく、そのためのSQL文や設定方法を教えてください。 1 2022/08/15 12:28
- MySQL 複数DBテーブルからのデータ取得 3 2022/05/17 15:02
- Access(アクセス) Accessテーブルの結合で別々のテーブルのフィールドを組み合わせて値を出す方法について 2 2022/07/20 19:43
このQ&Aを見た人はこんなQ&Aも見ています
-
新NISA制度は今までと何が変わる?非課税枠の拡大や投資対象の変更などを解説!
少額から投資を行う人のための非課税制度であるNISAが、2024年に改正される。おすすめの銘柄や投資額の目安について教えてもらった。
-
access2003 クエリSQL文について
その他(プログラミング・Web制作)
-
アクセス VBAについて FROM句の構文エラー
Access(アクセス)
-
SQL文で パラメータが少なすぎます エラー
Access(アクセス)
-
-
4
LEFT JOIN あいまいな外部結合
その他(データベース)
-
5
access vbaにてテンポラリーテーブルが作りたいです。
Access(アクセス)
-
6
Accessのクエリで2つのフィールドが同条件の場合に結合したい
その他(Microsoft Office)
-
7
Accessの画面更新を一時的に停止する方法。
その他(データベース)
-
8
Access2007でSQLの複数列副問い合わせについて
その他(データベース)
-
9
Accessの桁区切りについて教えてください。
Access(アクセス)
-
10
GROUP BYを行った後に結合したい。
Oracle
-
11
アクセスで数値型のフィールドにNullをいれたい
その他(データベース)
-
12
クエリ上でフィールド名が2つあるときの見分け方
Access(アクセス)
-
13
Accessのフィールド数が255しかない=業務では使えない?
PowerPoint(パワーポイント)
-
14
Access 2000 サブクエリとJOIN
その他(データベース)
-
15
ACCESSで空白のデーターをクエリで判定/識別する方法を教えてくださ
Access(アクセス)
-
16
Access2010 「演算子がありません」エラー
その他(データベース)
-
17
レコードを保存するコード アクセスvba
その他(Microsoft Office)
-
18
ACCESSのSQLで、NULLかNULLでないかの判定
その他(データベース)
-
19
ACCESSでデータ読み取り専用を解除する方法
その他(データベース)
-
20
Accessでデータシートに同じデータがいくつもでてしまいます。
その他(データベース)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
テーブルリンク リンク元を知...
-
会社の飲み会の幹事になり、座...
-
件数の多い順にselect
-
外部キーだけのテーブル(主キ...
-
男性と2人で飲食店に行きテーブ...
-
JavaScriptでAccessのテーブル...
-
「テーブルに座って……」という...
-
論理名とコメント構文(?)について
-
お金持ちのテーブル
-
Access データベースを分割した...
-
SYBASE12.5の行ロック
-
飲み会で、座敷orテーブルどち...
-
SQL 現在のレコードより古い番...
-
mysql alter table 終わらない
-
fetch_arrayでのエラー
-
このテーブルで
-
風水で丸いテーブルはあまりよ...
-
妹が、メルカリで売れた商品を...
-
1つのテーブルに同じデータを参...
-
面接のときテーブルが正面に。...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
L2SWはARPテーブルを持っている?
-
テーブルリンク リンク元を知...
-
会社の飲み会の幹事になり、座...
-
外部キーだけのテーブル(主キ...
-
飲み会で、座敷orテーブルどち...
-
アクセスのリンクテーブル一覧...
-
複数テーブルにわたるCOUNT
-
男性と2人で飲食店に行きテーブ...
-
「テーブルに座って……」という...
-
複雑なSQL文について
-
まるいテーブル 円い 丸い 漢字...
-
お金持ちのテーブル
-
【PHP】SQL文のSUM関数で出力し...
-
論理名とコメント構文(?)について
-
1つのテーブルに同じデータを参...
-
1対1のリレーション(主キー同...
-
MySQLで複数テーブルを作成する
-
テーブルの白く剥がれてるところに
-
オーダーの覚え方について
-
面接のときテーブルが正面に。...
おすすめ情報