oracle listagg函数查询出来显示空白

select listagg(**tr_mer_no** || tr_id, ' ') within group( order by tr_id desc)
from ccps_traderecord where tr_mer_no = 140102 and tr_id < 20
图片说明

select listagg(**tr_currency **|| tr_id, ' ') within group( order by tr_id desc)
from ccps_traderecord where tr_mer_no = 140102 and tr_id < 20
图片说明

第一条语句与第二条语句的唯一区别就是tr_mer_no是number类型,tr_currency是varchar类型;为什么只要是varchar类型就是空白的,别的varcahr类型也一样是空白

tr_mer_no和tr_id都是number所以成功,tr_currency与tr_id类型不一致所以失败,to_char(tr_id)试下

看下查询有没有问题