Существует таблица MEETINGPARTICIPANT
, как показано ниже, PK: ORGID
, MEETINGID
и PARTICIPANTID
Name Null? Type
------------------ -------- -------------
ORGID NOT NULL NUMBER(10)
MEETINGID NOT NULL VARCHAR2(32)
PARTICIPANTID NOT NULL VARCHAR2(32)
EMPLOYEEID NOT NULL VARCHAR2(32)
DISPLAYNAME VARCHAR2(128)
EMAIL VARCHAR2(128)
JOINTIME NOT NULL DATE
LEAVETIME NOT NULL DATE
CREATETIME NOT NULL DATE
LASTMODIFIEDTIME NOT NULL DATE
Шаг 1, список записей по ORGID
, MEETINGID
и EMPLOYEEID
, получить список записей.
SELECT
*
FROM
MEETINGPARTICIPANT
WHERE
ORGID=#{orgId}
AND MEETINGID=#{meetingId}
AND EMPLOYEEID=#{employeeId}
Шаг 2, выполнить итерацию каждой записи шага 1, выполнить поиск снова по EMAIL
и DISPLAYNAME
шага 1, объединить в большой список записей
for (each record in step 1) {
SELECT
*
FROM
MEETINGPARTICIPANT
WHERE
ORGID=#{orgId}
AND MEETINGID=#{meetingId}
AND EMAIL=#{record.email} AND DISPLAYNAME=#{record.displayName}
Merge searched records to mergedRecords
}
Шаг 3, возврат mergedRecords
Вопрос в том, как объединить SQL на шаге 1 и 2 в один SQL?