私はそのような質問があります:
select d.r_object_id,
(select max(max_date) from (
SELECT max(sys_s.r_modify_date) AS max_date
FROM kc_mission_s mis_s, dm_sysobject_s sys_s
WHERE mis_s.r_object_id = sys_s.r_object_id AND mis_s.ka_document = d.r_object_id
union all
SELECT sys_s.r_modify_date AS max_date
FROM dm_document_s doc_s left join dm_sysobject_s sys_s on doc_s.r_object_id = sys_s.r_object_id
WHERE doc_s.r_object_id = d.r_object_id
)) as maxx
from kc_document_s d
このフィールドd.r_object_id
は、最後にネストされたクエリからは表示されません。中間クエリが次のように削除されると表示されます。
select d.r_object_id,
(
SELECT max(sys_s.r_modify_date) AS max_date
FROM kc_mission_s mis_s, dm_sysobject_s sys_s
WHERE mis_s.r_object_id = sys_s.r_object_id AND mis_s.ka_document = d.r_object_id
union all
SELECT sys_s.r_modify_date AS max_date
FROM dm_document_s doc_s left join dm_sysobject_s sys_s on doc_s.r_object_id = sys_s.r_object_id
WHERE doc_s.r_object_id = d.r_object_id
) as maxx
from kc_document_s d
ただし、この場合、複数の行を選択することはできません。私は何をすべきか?