Oracle很好的自动拼接某个字段的函数listagg使用实例

with mes1 as

(

select c.cugrnname,cdd.cuassociatepackingname,c.cuReceiveTime,c.cuReceivePerson,

CASE WHEN c.custatus = 1 THEN N'已发送'

ELSE N'已接收' END custatus

,c.cuSendTime, c.cuSendPerson,cdd.cupackingworkcenter,cdd.cuqty,pb.PRODUCTNAME,p.description,cdd.description as Reworks ,c.cuconfirmperson as CONFIRM

from cugrn c

inner join cuDetails cd on cd.cugrnid = c.cugrnid

inner join cuassociatepacking cdd on cdd.cuassociatepackingid = cd.cuassociatepackingid

inner join product p on p.productid = cdd.cuproductid

inner join productbase pb on pb.productbaseid = p.productbaseid

where c.cugrnname = N'M221124014' or cdd.cuassociatepackingname = N'1'

),

mes2 as

(

select th,max(gd) as gd

from

(

select 托号 as th, listagg(工单,',') within group ( order by 托号) over (partition by 托号) gd

-----很好的自动拼接某个字段的函数

from

( SELECT C1.CUASSOCIATEPACKINGNAME as 托号,

MO.MFGORDERNAME as 工单

FROM cuAssociatePacking c1

inner join cuAssociateDetails c2 on c1.cuassociatepackingid = c2.cuassociatepackingid

left join cuAssociatePacking C5 on c5.cuassociatepackingname = C2.CUSONLOT

left join cuAssociateDetails c6 on c6.cuassociatepackingid = c5.cuassociatepackingid

left join container C7 on c7.containerid = c6.cufromlotid

LEFT join cucontainergraderrecord ccd on ccd.containername=C7.containername

inner join mfgorder mo on ccd.cuworkorder = mo.mfgordername

inner join mes1 m1 on m1.cuassociatepackingname=c1.CUASSOCIATEPACKINGNAME

where c1.cupackingtype='Pallet' ---and c1.cupackingtime>sysdate-1

group by c1.CUASSOCIATEPACKINGNAME,mo.mfgordername

)t

)t1

group by t1.th ----确保一条记录

)

select m1.*,m2.gd

from mes1 m1

left join mes2 m2 on m1.CUASSOCIATEPACKINGNAME=m2.th

相关推荐
Lw老王要学习1 小时前
Linux数据库篇、第一章_02_MySQL的使用增删改查
linux·运维·数据库·mysql·云计算·it
林下清风~1 小时前
MySQL——九、锁
数据库·mysql
呦呦鹿鸣Rzh2 小时前
redis
数据库·redis·缓存
xiaogai_gai2 小时前
有效的聚水潭数据集成到MySQL案例
android·数据库·mysql
web130933203983 小时前
Mysql的安装配置教程(非常详细)从零基础入门到精通,看完这一篇就够了
数据库·mysql
三天不学习3 小时前
浅析AI大模型为何需要向量数据库?【入门基础】
数据库·人工智能·欧氏距离·向量数据库·余弦相似度
MonkeyKing_sunyuhua3 小时前
将数据库结构化数据整合到RAG问答中的方式
数据库
喝醉酒的小白3 小时前
MySQL内存使用率高问题排查与解决方案:
数据库
鹅鹅鹅呢3 小时前
mysql 登录报错:ERROR 1045(28000):Access denied for user ‘root‘@‘localhost‘ (using password Yes)
android·数据库·mysql
摘星编程3 小时前
Redis+Caffeine构建高性能二级缓存
数据库·redis·缓存