RFSとRFS_Historyという2つのテーブルがあります。
RFS_id | name
--------+--------
12 | xx
14 | yy
15 | zz
図1:RFSテーブル
RFS_id | gate | End | start
--------+-------+--------+-------
12 | aa | 19/02 | 20/03
12 | bb | 30/01 | 12/08
12 | cc | 30/01 | 12/08
13 | aa | 30/01 | 12/08
12 | dd | 30/01 | 12/08
図2:RFSの履歴
私の最初のクエリは、FRSname='xx'である情報を取得するためのselect*クエリです。
SELECT * FROM RFS, RFSHistory
WHERE RFSname="xx" And RFShistory.RFS_ID=RFS.RFS_ID
結果は次のとおりです。
RFS_id | gate | End | start
--------+-------+--------+-------
12 | aa | 19/02 | 19/01
12 | bb | 12/04 | 12/02
12 | cc | 20/03 | 12/03
12 | dd | 30/09 | 12/08
図3
ただし、次の形式のような結果を取得したい:
RFS_id | gate_aa | gate_bb | gate_cc | gate_dd
----------------------------------------------
12 | 30 days | 60dyas | 8days | 18days
gate_aa
デュライオンであり、から取得しstart - end date
ます。この結果を得るために単一のクエリを書くのを手伝ってください。