sql日常记录 (任一个以R,X,T,‘R/NOPB‘,‘T/NOPB‘,‘X/NOPB‘ 结尾的合并统计另外6个)

本文介绍了一个复杂的SQL查询案例,用于从两个不同的表中匹配特定的数据模式并进行汇总统计。该查询涉及多个条件判断与字符串操作,旨在针对特定的商品型号进行库存数量的计算。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

				处理匹配另外一个表 以R,X,T,'R/NOPB','T/NOPB','X/NOPB' 结尾合并统计,即单个R需要匹配另外6个数据,并且需要合计这6个数据						
										SELECT *, (SELECT SUM(a.QtyLeft) StorageQty from BusiTradeList a
                                        LEFT JOIN BusiTradeMain m on m.TradeNo = a.TradeNo  AND m.CompanyCode = 'hsdz'
                                        where m.Status = 2 and a.CompanyCode =  'hsdz' and m.TradeNoType in ('JInS', 'JInDB') and 
                                        (t.GoodsModelFact1=a.GoodsModelFact 
                                        OR t.GoodsModelFact1+'R'=a.GoodsModelFact
                                        OR t.GoodsModelFact1+'T'=a.GoodsModelFact
                                        OR t.GoodsModelFact1+'X'=a.GoodsModelFact
                                        OR t.GoodsModelFact1+'R/NOPB'=a.GoodsModelFact
                                        OR t.GoodsModelFact1+'X/NOPB'=a.GoodsModelFact
                                        OR t.GoodsModelFact1+'T/NOPB'=a.GoodsModelFact )) StorageQty
                                        FROM
                                        (SELECT b.ModifyCode, b.GoodsModelFact,(CASE 
	                                             WHEN PATINDEX('%R', b.GoodsModelFact)>0 THEN SUBSTRING(b.GoodsModelFact, 1, PATINDEX('%R', b.GoodsModelFact)-1)
	                                             WHEN PATINDEX('%T', b.GoodsModelFact)>0 THEN SUBSTRING(b.GoodsModelFact, 1, PATINDEX('%T', b.GoodsModelFact)-1)
	                                             WHEN PATINDEX('%X', b.GoodsModelFact)>0 THEN SUBSTRING(b.GoodsModelFact, 1, PATINDEX('%X', b.GoodsModelFact)-1)
	                                             WHEN PATINDEX('%X/NOPB', b.GoodsModelFact)>0 THEN SUBSTRING(b.GoodsModelFact, 1, PATINDEX('%X/NOPB', b.GoodsModelFact)-1)
                                               WHEN PATINDEX('%T/NOPB', b.GoodsModelFact)>0 THEN SUBSTRING(b.GoodsModelFact, 1, PATINDEX('%T/NOPB', b.GoodsModelFact)-1)
                                               WHEN PATINDEX('%R/NOPB', b.GoodsModelFact)>0 THEN SUBSTRING(b.GoodsModelFact, 1, PATINDEX('%R/NOPB', b.GoodsModelFact)-1)
	                                             ELSE '' END) GoodsModelFact1
                                        from BusiTradeJXJ b
                                        where b.CompanyCode = 'hsdz' AND b.BrandID in ('TI','Texas Instruments') ) AS T
                                        WHERE t.GoodsModelFact1 <>'' and t.GoodsModelFact='TPS65251RHAR'
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

明日及时

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值