편집 : 내 잘못, 신분증 부분을 놓친 것 같습니다.
, 나는 FULL OUTER JOIN의 힘을 빌어서 이렇게 만들었습니다.
그래서 중앙에서 시작하여, 나는 T4와 T5에 가입하고, 기본 목표는 시간에 자료를 검색하려면, 그래서 이후로는 일반 인덱스 datetime_index를 만들었습니다. join에 대해 일치하는 날짜 또는 null (일치하지 않는 경우)을 반환하므로 coalesce를 사용하면 첫 번째 null이 아닌 값을 반환하므로 t4의 날짜 또는 t5의 날짜가됩니다. 이 과정을 세 번 더 반복하면, 각각 이전에 생성 된 테이블 인 voila의 맨 위에 원하는 최종 테이블이 생깁니다.
SELECT COALESCE(tbl.t1_datetime, tbl.datetime_index) AS datetime_index, tbl.t1_id as t1_id, tbl.t1_datetime as t1_datetime, tbl.t1_amt as t1_amt,tbl.t2_id as t2_id, tbl.t2_datetime as t2_datetime, tbl.t2_amt as t2_amt, tbl.t3_id as t3_id, tbl.t3_datetime as t3_datetime, tbl.t3_amt as t3_amt, tbl.t4_id as t4_id, tbl.t4_datetime as t4_datetime, tbl.t4_amt as t4_amt, tbl.t5_id as t5_id, tbl.t5_datetime as t5_datetime, tbl.t5_amt as t5_amt
FROM (SELECT tmptbl.datetime_index, t1.id as t1_id, t1.datetime as t1_datetime, t1.amt as t1_amt,tmptbl.t2_id as t2_id, tmptbl.t2_datetime as t2_datetime, tmptbl.t2_amt as t2_amt, tmptbl.t3_id as t3_id, tmptbl.t3_datetime as t3_datetime, tmptbl.t3_amt as t3_amt, tmptbl.t4_id as t4_id, tmptbl.t4_datetime as t4_datetime, tmptbl.t4_amt as t4_amt, tmptbl.t5_id as t5_id, tmptbl.t5_datetime as t5_datetime, tmptbl.t5_amt as t5_amt
FROM tb1 t1 LEFT JOIN (
SELECT COALESCE(tbl.t2_datetime, tbl.datetime_index) AS datetime_index, tbl.t2_id as t2_id, tbl.t2_datetime as t2_datetime, tbl.t2_amt as t2_amt, tbl.t3_id as t3_id, tbl.t3_datetime as t3_datetime, tbl.t3_amt as t3_amt, tbl.t4_id as t4_id, tbl.t4_datetime as t4_datetime, tbl.t4_amt as t4_amt, tbl.t5_id as t5_id, tbl.t5_datetime as t5_datetime, tbl.t5_amt as t5_amt
FROM (SELECT tmptbl.datetime_index, t2.id as t2_id, t2.datetime as t2_datetime, t2.amt as t2_amt,tmptbl.t3_id as t3_id, tmptbl.t3_datetime as t3_datetime, tmptbl.t3_amt as t3_amt, tmptbl.t4_id as t4_id, tmptbl.t4_datetime as t4_datetime, tmptbl.t4_amt as t4_amt, tmptbl.t5_id as t5_id, tmptbl.t5_datetime as t5_datetime, tmptbl.t5_amt as t5_amt
FROM tb2 t2 LEFT JOIN (
SELECT COALESCE(tbl.t3_datetime, tbl.datetime_index) AS datetime_index, tbl.t3_id as t3_id, tbl.t3_datetime as t3_datetime, tbl.t3_amt as t3_amt, tbl.t4_id as t4_id, tbl.t4_datetime as t4_datetime, tbl.t4_amt as t4_amt, tbl.t5_id as t5_id, tbl.t5_datetime as t5_datetime, tbl.t5_amt as t5_amt
FROM (SELECT tmptbl.datetime_index, t3.id as t3_id, t3.datetime as t3_datetime, t3.amt as t3_amt, tmptbl.t4_id as t4_id, tmptbl.t4_datetime as t4_datetime, tmptbl.t4_amt as t4_amt, tmptbl.t5_id as t5_id, tmptbl.t5_datetime as t5_datetime, tmptbl.t5_amt as t5_amt
FROM tb3 t3 LEFT JOIN (
SELECT COALESCE(tbl.t4_datetime, tbl.t5_datetime) AS datetime_index, tbl.t4_id as t4_id, tbl.t4_datetime as t4_datetime, tbl.t4_amt as t4_amt, tbl.t5_id as t5_id, tbl.t5_datetime as t5_datetime, tbl.t5_amt as t5_amt
FROM (SELECT t4.id as t4_id, t4.datetime as t4_datetime, t4.amt as t4_amt, t5.id as t5_id, t5.datetime as t5_datetime, t5.amt as t5_amt
FROM tb4 t4 LEFT JOIN tb5 t5 ON t4.datetime = t5.datetime
UNION
SELECT t4.id as t4_id, t4.datetime as t4_datetime, t4.amt as t4_amt, t5.id as t5_id, t5.datetime as t5_datetime, t5.amt as t5_amt
FROM tb4 t4 RIGHT JOIN tb5 t5 ON t4.datetime = t5.datetime) tbl
) tmptbl ON t3.datetime = tmptbl.datetime_index
UNION
SELECT tmptbl.datetime_index, t3.id as t3_id, t3.datetime as t3_datetime, t3.amt as t3_amt, tmptbl.t4_id as t4_id, tmptbl.t4_datetime as t4_datetime, tmptbl.t4_amt as t4_amt, tmptbl.t5_id as t5_id, tmptbl.t5_datetime as t5_datetime, tmptbl.t5_amt as t5_amt
FROM tb3 t3 RIGHT JOIN (
SELECT COALESCE(tbl.t4_datetime, tbl.t5_datetime) AS datetime_index, tbl.t4_id as t4_id, tbl.t4_datetime as t4_datetime, tbl.t4_amt as t4_amt, tbl.t5_id as t5_id, tbl.t5_datetime as t5_datetime, tbl.t5_amt as t5_amt
FROM (SELECT t4.id as t4_id, t4.datetime as t4_datetime, t4.amt as t4_amt, t5.id as t5_id, t5.datetime as t5_datetime, t5.amt as t5_amt
FROM tb4 t4 LEFT JOIN tb5 t5 ON t4.datetime = t5.datetime
UNION
SELECT t4.id as t4_id, t4.datetime as t4_datetime, t4.amt as t4_amt, t5.id as t5_id, t5.datetime as t5_datetime, t5.amt as t5_amt
FROM tb4 t4 RIGHT JOIN tb5 t5 ON t4.datetime = t5.datetime) tbl
) tmptbl ON t3.datetime = tmptbl.datetime_index) tbl
) tmptbl ON t2.datetime = tmptbl.datetime_index
UNION
SELECT tmptbl.datetime_index, t2.id as t2_id, t2.datetime as t2_datetime, t2.amt as t2_amt, tmptbl.t3_id as t3_id, tmptbl.t3_datetime as t3_datetime, tmptbl.t3_amt as t3_amt, tmptbl.t4_id as t4_id, tmptbl.t4_datetime as t4_datetime, tmptbl.t4_amt as t4_amt, tmptbl.t5_id as t5_id, tmptbl.t5_datetime as t5_datetime, tmptbl.t5_amt as t5_amt
FROM tb2 t2 RIGHT JOIN (
SELECT COALESCE(tbl.t3_datetime, tbl.datetime_index) AS datetime_index, tbl.t3_id as t3_id, tbl.t3_datetime as t3_datetime, tbl.t3_amt as t3_amt, tbl.t4_id as t4_id, tbl.t4_datetime as t4_datetime, tbl.t4_amt as t4_amt, tbl.t5_id as t5_id, tbl.t5_datetime as t5_datetime, tbl.t5_amt as t5_amt
FROM (SELECT tmptbl.datetime_index, t3.id as t3_id, t3.datetime as t3_datetime, t3.amt as t3_amt, tmptbl.t4_id as t4_id, tmptbl.t4_datetime as t4_datetime, tmptbl.t4_amt as t4_amt, tmptbl.t5_id as t5_id, tmptbl.t5_datetime as t5_datetime, tmptbl.t5_amt as t5_amt
FROM tb3 t3 LEFT JOIN (
SELECT COALESCE(tbl.t4_datetime, tbl.t5_datetime) AS datetime_index, tbl.t4_id as t4_id, tbl.t4_datetime as t4_datetime, tbl.t4_amt as t4_amt, tbl.t5_id as t5_id, tbl.t5_datetime as t5_datetime, tbl.t5_amt as t5_amt
FROM (SELECT t4.id as t4_id, t4.datetime as t4_datetime, t4.amt as t4_amt, t5.id as t5_id, t5.datetime as t5_datetime, t5.amt as t5_amt
FROM tb4 t4 LEFT JOIN tb5 t5 ON t4.datetime = t5.datetime
UNION
SELECT t4.id as t4_id, t4.datetime as t4_datetime, t4.amt as t4_amt, t5.id as t5_id, t5.datetime as t5_datetime, t5.amt as t5_amt
FROM tb4 t4 RIGHT JOIN tb5 t5 ON t4.datetime = t5.datetime) tbl
) tmptbl ON t3.datetime = tmptbl.datetime_index
UNION
SELECT tmptbl.datetime_index, t3.id as t3_id, t3.datetime as t3_datetime, t3.amt as t3_amt, tmptbl.t4_id as t4_id, tmptbl.t4_datetime as t4_datetime, tmptbl.t4_amt as t4_amt, tmptbl.t5_id as t5_id, tmptbl.t5_datetime as t5_datetime, tmptbl.t5_amt as t5_amt
FROM tb3 t3 RIGHT JOIN (
SELECT COALESCE(tbl.t4_datetime, tbl.t5_datetime) AS datetime_index, tbl.t4_id as t4_id, tbl.t4_datetime as t4_datetime, tbl.t4_amt as t4_amt, tbl.t5_id as t5_id, tbl.t5_datetime as t5_datetime, tbl.t5_amt as t5_amt
FROM (SELECT t4.id as t4_id, t4.datetime as t4_datetime, t4.amt as t4_amt, t5.id as t5_id, t5.datetime as t5_datetime, t5.amt as t5_amt
FROM tb4 t4 LEFT JOIN tb5 t5 ON t4.datetime = t5.datetime
UNION
SELECT t4.id as t4_id, t4.datetime as t4_datetime, t4.amt as t4_amt, t5.id as t5_id, t5.datetime as t5_datetime, t5.amt as t5_amt
FROM tb4 t4 RIGHT JOIN tb5 t5 ON t4.datetime = t5.datetime) tbl
) tmptbl ON t3.datetime = tmptbl.datetime_index) tbl
) tmptbl ON t2.datetime = tmptbl.datetime_index) tbl
) tmptbl ON t1.datetime = tmptbl.datetime_index
UNION
SELECT tmptbl.datetime_index, t1.id as t1_id, t1.datetime as t1_datetime, t1.amt as t1_amt, tmptbl.t2_id as t2_id, tmptbl.t2_datetime as t2_datetime, tmptbl.t2_amt as t2_amt, tmptbl.t3_id as t3_id, tmptbl.t3_datetime as t3_datetime, tmptbl.t3_amt as t3_amt, tmptbl.t4_id as t4_id, tmptbl.t4_datetime as t4_datetime, tmptbl.t4_amt as t4_amt, tmptbl.t5_id as t5_id, tmptbl.t5_datetime as t5_datetime, tmptbl.t5_amt as t5_amt
FROM tb1 t1 RIGHT JOIN (
SELECT COALESCE(tbl.t2_datetime, tbl.datetime_index) AS datetime_index, tbl.t2_id as t2_id, tbl.t2_datetime as t2_datetime, tbl.t2_amt as t2_amt, tbl.t3_id as t3_id, tbl.t3_datetime as t3_datetime, tbl.t3_amt as t3_amt, tbl.t4_id as t4_id, tbl.t4_datetime as t4_datetime, tbl.t4_amt as t4_amt, tbl.t5_id as t5_id, tbl.t5_datetime as t5_datetime, tbl.t5_amt as t5_amt
FROM (SELECT tmptbl.datetime_index, t2.id as t2_id, t2.datetime as t2_datetime, t2.amt as t2_amt,tmptbl.t3_id as t3_id, tmptbl.t3_datetime as t3_datetime, tmptbl.t3_amt as t3_amt, tmptbl.t4_id as t4_id, tmptbl.t4_datetime as t4_datetime, tmptbl.t4_amt as t4_amt, tmptbl.t5_id as t5_id, tmptbl.t5_datetime as t5_datetime, tmptbl.t5_amt as t5_amt
FROM tb2 t2 LEFT JOIN (
SELECT COALESCE(tbl.t3_datetime, tbl.datetime_index) AS datetime_index, tbl.t3_id as t3_id, tbl.t3_datetime as t3_datetime, tbl.t3_amt as t3_amt, tbl.t4_id as t4_id, tbl.t4_datetime as t4_datetime, tbl.t4_amt as t4_amt, tbl.t5_id as t5_id, tbl.t5_datetime as t5_datetime, tbl.t5_amt as t5_amt
FROM (SELECT tmptbl.datetime_index, t3.id as t3_id, t3.datetime as t3_datetime, t3.amt as t3_amt, tmptbl.t4_id as t4_id, tmptbl.t4_datetime as t4_datetime, tmptbl.t4_amt as t4_amt, tmptbl.t5_id as t5_id, tmptbl.t5_datetime as t5_datetime, tmptbl.t5_amt as t5_amt
FROM tb3 t3 LEFT JOIN (
SELECT COALESCE(tbl.t4_datetime, tbl.t5_datetime) AS datetime_index, tbl.t4_id as t4_id, tbl.t4_datetime as t4_datetime, tbl.t4_amt as t4_amt, tbl.t5_id as t5_id, tbl.t5_datetime as t5_datetime, tbl.t5_amt as t5_amt
FROM (SELECT t4.id as t4_id, t4.datetime as t4_datetime, t4.amt as t4_amt, t5.id as t5_id, t5.datetime as t5_datetime, t5.amt as t5_amt
FROM tb4 t4 LEFT JOIN tb5 t5 ON t4.datetime = t5.datetime
UNION
SELECT t4.id as t4_id, t4.datetime as t4_datetime, t4.amt as t4_amt, t5.id as t5_id, t5.datetime as t5_datetime, t5.amt as t5_amt
FROM tb4 t4 RIGHT JOIN tb5 t5 ON t4.datetime = t5.datetime) tbl
) tmptbl ON t3.datetime = tmptbl.datetime_index
UNION
SELECT tmptbl.datetime_index, t3.id as t3_id, t3.datetime as t3_datetime, t3.amt as t3_amt, tmptbl.t4_id as t4_id, tmptbl.t4_datetime as t4_datetime, tmptbl.t4_amt as t4_amt, tmptbl.t5_id as t5_id, tmptbl.t5_datetime as t5_datetime, tmptbl.t5_amt as t5_amt
FROM tb3 t3 RIGHT JOIN (
SELECT COALESCE(tbl.t4_datetime, tbl.t5_datetime) AS datetime_index, tbl.t4_id as t4_id, tbl.t4_datetime as t4_datetime, tbl.t4_amt as t4_amt, tbl.t5_id as t5_id, tbl.t5_datetime as t5_datetime, tbl.t5_amt as t5_amt
FROM (SELECT t4.id as t4_id, t4.datetime as t4_datetime, t4.amt as t4_amt, t5.id as t5_id, t5.datetime as t5_datetime, t5.amt as t5_amt
FROM tb4 t4 LEFT JOIN tb5 t5 ON t4.datetime = t5.datetime
UNION
SELECT t4.id as t4_id, t4.datetime as t4_datetime, t4.amt as t4_amt, t5.id as t5_id, t5.datetime as t5_datetime, t5.amt as t5_amt
FROM tb4 t4 RIGHT JOIN tb5 t5 ON t4.datetime = t5.datetime) tbl
) tmptbl ON t3.datetime = tmptbl.datetime_index) tbl
) tmptbl ON t2.datetime = tmptbl.datetime_index
UNION
SELECT tmptbl.datetime_index, t2.id as t2_id, t2.datetime as t2_datetime, t2.amt as t2_amt, tmptbl.t3_id as t3_id, tmptbl.t3_datetime as t3_datetime, tmptbl.t3_amt as t3_amt, tmptbl.t4_id as t4_id, tmptbl.t4_datetime as t4_datetime, tmptbl.t4_amt as t4_amt, tmptbl.t5_id as t5_id, tmptbl.t5_datetime as t5_datetime, tmptbl.t5_amt as t5_amt
FROM tb2 t2 RIGHT JOIN (
SELECT COALESCE(tbl.t3_datetime, tbl.datetime_index) AS datetime_index, tbl.t3_id as t3_id, tbl.t3_datetime as t3_datetime, tbl.t3_amt as t3_amt, tbl.t4_id as t4_id, tbl.t4_datetime as t4_datetime, tbl.t4_amt as t4_amt, tbl.t5_id as t5_id, tbl.t5_datetime as t5_datetime, tbl.t5_amt as t5_amt
FROM (SELECT tmptbl.datetime_index, t3.id as t3_id, t3.datetime as t3_datetime, t3.amt as t3_amt, tmptbl.t4_id as t4_id, tmptbl.t4_datetime as t4_datetime, tmptbl.t4_amt as t4_amt, tmptbl.t5_id as t5_id, tmptbl.t5_datetime as t5_datetime, tmptbl.t5_amt as t5_amt
FROM tb3 t3 LEFT JOIN (
SELECT COALESCE(tbl.t4_datetime, tbl.t5_datetime) AS datetime_index, tbl.t4_id as t4_id, tbl.t4_datetime as t4_datetime, tbl.t4_amt as t4_amt, tbl.t5_id as t5_id, tbl.t5_datetime as t5_datetime, tbl.t5_amt as t5_amt
FROM (SELECT t4.id as t4_id, t4.datetime as t4_datetime, t4.amt as t4_amt, t5.id as t5_id, t5.datetime as t5_datetime, t5.amt as t5_amt
FROM tb4 t4 LEFT JOIN tb5 t5 ON t4.datetime = t5.datetime
UNION
SELECT t4.id as t4_id, t4.datetime as t4_datetime, t4.amt as t4_amt, t5.id as t5_id, t5.datetime as t5_datetime, t5.amt as t5_amt
FROM tb4 t4 RIGHT JOIN tb5 t5 ON t4.datetime = t5.datetime) tbl
) tmptbl ON t3.datetime = tmptbl.datetime_index
UNION
SELECT tmptbl.datetime_index, t3.id as t3_id, t3.datetime as t3_datetime, t3.amt as t3_amt, tmptbl.t4_id as t4_id, tmptbl.t4_datetime as t4_datetime, tmptbl.t4_amt as t4_amt, tmptbl.t5_id as t5_id, tmptbl.t5_datetime as t5_datetime, tmptbl.t5_amt as t5_amt
FROM tb3 t3 RIGHT JOIN (
SELECT COALESCE(tbl.t4_datetime, tbl.t5_datetime) AS datetime_index, tbl.t4_id as t4_id, tbl.t4_datetime as t4_datetime, tbl.t4_amt as t4_amt, tbl.t5_id as t5_id, tbl.t5_datetime as t5_datetime, tbl.t5_amt as t5_amt
FROM (SELECT t4.id as t4_id, t4.datetime as t4_datetime, t4.amt as t4_amt, t5.id as t5_id, t5.datetime as t5_datetime, t5.amt as t5_amt
FROM tb4 t4 LEFT JOIN tb5 t5 ON t4.datetime = t5.datetime
UNION
SELECT t4.id as t4_id, t4.datetime as t4_datetime, t4.amt as t4_amt, t5.id as t5_id, t5.datetime as t5_datetime, t5.amt as t5_amt
FROM tb4 t4 RIGHT JOIN tb5 t5 ON t4.datetime = t5.datetime) tbl
) tmptbl ON t3.datetime = tmptbl.datetime_index) tbl
) tmptbl ON t2.datetime = tmptbl.datetime_index) tbl
) tmptbl ON t1.datetime = tmptbl.datetime_index) tbl
설명이 명확하지 않습니다. [mcve]를 읽고 행동하십시오. DDL 등을 보여주십시오. 물건을 명확하게 지칭하고 의미를 말하기에 충분한 문장과 단어를 사용하십시오. – philipxy