暂无图片
Orcle 查询报表,从A账套查询出的结果,想要模糊匹配到B账套,怎么进行模糊匹配啊
我来答
分享
暂无图片 匿名用户
Orcle 查询报表,从A账套查询出的结果,想要模糊匹配到B账套,怎么进行模糊匹配啊

如题,想要A,B账套关联进行查询。两个账套采购入库单和出库单除了多两个字母,其它都是一样的,这样要如何进行匹配呢?

代码如下:

第一段: 

        为了查询出采购入库单的单号

        select 单号 from (

select pi_inoutno 单号,ba_sourcebatch 原始批号,pd_pdno 序号,pd_ordercode 采购单号 from YHND_SZ.ProdIODetail
left join YHND_SZ.prodinout on pd_piid=pi_id
left join YHND_SZ.batch on ba_code=pd_batchcode
where ba_sourcebatch=(
select 原始批号 from (
select pi_inoutno 单号,pd_batchcode 批号,pd_pdno 序号, ba_sourcebatch 原始批号 from YHND_SZ.ProdIODetail
left join YHND_SZ.prodinout on pd_piid=pi_id
left join YHND_SZ.batch on ba_code=pd_batchcode
where pi_class='出货单' and pi_invostatus='已审核' and pi_inoutno='SZCK22081007')
)and pi_class='采购验收单' and pi_invostatus='已审核'
)


第二段,想要根据第一段的查询结果,进行与B账套的出库单匹配。(目前给的固定条件,后续应该要取消)

select pi_inoutno 单号,pd_batchcode 批号,pd_pdno 序号 from YHND_HK.ProdIODetail
left join YHND_HK.prodinout on pd_piid=pi_id
where pi_class='出货单' and pi_invostatus='已审核' and pi_inoutno like ''


到这个地方就不知道怎么写了

我来答
添加附件
收藏
分享
问题补充
3条回答
默认
最新
刘贵宾

把第一段写成视图,然后和第二段关联查询怎么样呢

CREATE VIEW view_name AS select 

暂无图片 评论
暂无图片 有用 0
DarkAthena

如果单号有规则,可以用substr或者replace把那两个字母去掉,即可用等值关联。
模糊关联的话,

字段a like '%'||字段b||'%'
暂无图片 评论
暂无图片 有用 0
张sir

把第一部分写成视图或者用子查询或者用with,后面就是关联查询:



SQL> select * from test1;

ID NAME
---------- ----------
1 dc
2 bb

SQL> select * from test;

ID NAME
---------- ----------
1 ab
2 ab
3 dc

SQL> select a.* from test1 a,test b where a.name like '%'||b.name||'%';

ID NAME
---------- ----------
1 dc

暂无图片 评论
暂无图片 有用 0
回答交流
提交
问题信息
请登录之后查看
邀请回答
暂无人订阅该标签,敬请期待~~
暂无图片墨值悬赏