Я работаю над запросом для Oracle
, который использует LISTAGG
. Я хотел бы включить оператор sub-select
после использования LISTAGG
, но продолжаю говорить о синтаксисе, и я думаю, что это связано со строкой "GROUP BY
". Я не уверен в правильном синтаксисе для поля, встроенного в оператор sub-select
в строке кода GROUP BY
.
LISTAGG
необходим, так как мне нужно, чтобы поле "PATCH_AREA
" было сжато в одну строку вместо нескольких записей для каждого PATCH_AREA
.
Следующий запрос работает нормально, если закомментированный раздел не включен. Мне нужно добавить закомментированную строку.
select
katpf7c as "Event ID",
artanrc as "Item Number",
artbezc as "Description",
prsvf18c as "Product Presentation",
prsvf19c as "Page Type",
doksnei as "Page Number",
LISTAGG(KAVBEZC,',') within GROUP (ORDER BY KAVBEZC) PATCH_AREA ,
provf10c as "Block Number",
prsvf17c as "Notes From Agency",
prsvf16c as "VBU Name" --,
--(SELECT afl.aflfldc FROM fty inner join afl ON afl.aflftykeyi = fty.ftykeyi WHERE fty.ftybezc = 'MDVDesc' and AFL.AFLARTKEYI = ART.ARTKEYI and AFL.AFLKAVKEYI = ART.ARTKAVKEYI) as "MDVDesc",
from art
inner join aez ON art.artkavkeyi = aez.aezkavkeyi and ART.ARTKEYI = AEZ.AEZARTKEYI
inner join pro on pro.prokavkeyi = aez.aezkavkeyi and PRO.PROKEYI = AEZ.AEZPROKEYI
full outer join DOK on PRO.PROKAVKEYI = DOK.DOKKAVKEYI and PRO.PROSNEI = DOK.DOKSNEI
inner join prs on prsartkeyi = artkeyi and prskavkeyi = artkavkeyi
join kav on kavkeyi = artkavkeyi
join kat on kavkatkeyi = katkeyi
full outer join psz on pszprokeyi = prokeyi and pszkavkeyi = prokavkeyi
where katkeyi in (5985)
group by katpf7c,artanrc,artbezc,prsvf18c,prsvf19c,doksnei,provf10c,prsvf17c,prsvf16c
order by artanrc