想请教一个sql的问题,大神帮帮忙!

图片说明

正如上图,我想根据发票号去重,然后对应的订单编号不合并,这个sql怎么写呢?

如果是ORACLE的话,可以用listagg函数
SELECT T.ORDER_NUMBER, listagg(T.ORDER_NUM,',') within group (order by T.ORDER_NUM) AS ORDER_NUM FROM TABLENAME T

GROUP BY T.ORDER_NUMBER;

SQL语句里TABLENAME换成你的表名应该就可以。

select distinct选出不重复的订单号,然后再子查询。

图片说明

比如这种,相同的order_number,在同一个表中我想通过order_number分组查询,然后不同的orders_num在同一列中显示,以“,”隔开,sql应该怎么写啊?

数据库里面写一个函数转一下不行吗