在 Oracle 数据库中,'WM_CONCAT' 函数已被弃用,并且在某些版本中已被移除。您可以使用 'LISTAGG' 函数作为替代。

以下是使用 'LISTAGG' 函数替代 'WM_CONCAT' 函数的示例查询:

SELECT LISTAGG(pa.ALLERGEN, ', ') WITHIN GROUP (ORDER BY pa.ALLERGEN)
FROM ORDERS_DRUG_MASTER odm
JOIN PAT_MASTER_INDEX pmi ON odm.patient_id = pmi.patient_id
JOIN PATIENT_ALLERGY pa ON pmi.patient_id = pa.patient_id
WHERE odm.presc_no = $P{prescNO};

该查询将使用逗号作为分隔符,将 'PATIENT_ALLERGY' 表中的 'ALLERGEN' 列的值连接在一起,并按 'ALLERGEN' 的字母顺序排序。如果您想使用不同的分隔符,请将逗号替换为所需的分隔符。

Oracle 数据库中 WM_CONCAT 函数的替代方案 - 使用 LISTAGG 函数

原文地址: https://www.cveoy.top/t/topic/lKnm 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录