【Oracle】wmsys.wm_concat函数字段值为空

时间:2023-03-08 23:17:27
【Oracle】wmsys.wm_concat函数字段值为空

这个是因为字符集的问题,和空值是没关系的。
其实已经取到了数据,可以验证一下
返回的不是0,但是由于这个里面有个chr(0)字符,而且可能第一个字符就是chr(0),所以就显示得怪异的空现象。
至于为何会出现chr(0),这就是因为WM_CONCAT函数的问题了,可能它对于多种字符集的处理不是很好吧,所以如果里面的参数不用to_char处理一下,就有可能出现乱码甚至为空的现象。

像这样:

wmsys.wm_concat(to_char(tab.SYSTEM_SYMBOL)) AS SYSTEM_SYMBOL

使用to_char函数即可。