【发布时间】:2020-07-21 00:09:27
【问题描述】:
我有很多列要聚合在一起,其中大多数都有 NULL 值。我想用 ';' 分隔确实出现的值但我找不到在 oracle 中执行此操作的有效方法。 CONCAT_WS 正是我需要的,因为它不会在 NULL 值之间添加分隔符,但 oracle 不支持这一点。
concat_ws(';','dx89','dx90','dx91','dx92') as diagnoses3
ORA-00904: "CONCAT_WS": invalid identifier
使用这样的函数是相似的,但并不能完全满足我的需要,因为您可以看到“;”在字符串的末尾,因为 dx91 和 dx92 是 NULL 值:
dx89||';'||dx90||';'||dx91||';'||dx92 as diagnoses2
I63.8;I63.9;;
任何帮助将不胜感激!
【问题讨论】:
标签: sql oracle concatenation