このページに関してのお問い合わせはこちら
SQL質疑応答スレ 9問目
ツイート
545
:
NAME IS NULL
:
2010/02/18(木) 21:46:08 ID:LsNyZ5p3
Accessで共通テーブル式?のようなものを実現することはできないでしょうか?
・DB : Microsoft Access 2007
・データ
■Relationテーブル
TaskNo RelationTaskNo
1 2
2 3
2 4
4 5
: :
: :
: :
上記はタスクと、そのタスクに関連するタスクのNoを保持しているテーブルです。
このようなテーブルから、指定したTaskNoに関連するタスクを取得して、
その関連タスクにまた関連するタスクを…といった形でデータを取得したいのです。
以前SQLServerで似たような結果を取得した際は
WITH RELATIONS (TaskNo,RelationTaskNo)
AS
(SELECT TaskNo,RelationTaskNo FROM Relation WHERE TaskNo = 取得したい番号
UNION ALL
SELECT R.TaskNo,R.RelationTaskNo
FROM Relation AS R INNER JOIN RELATIONS AS CTE ON R.RelationTaskNo = CTE.TaskNo)
SELECT * FROM RELATIONS
(当時の環境が手元にないため構文が微妙に間違っているかも…)
どなたかご存じだったら知恵を貸してください。