我现在在总数据库里做了一个存储过程,里面有如下查询语句:
select XXX
from cif_basic_inf cb,
mdm_ac_rel md,
cif_comm_inf cc,
ln_mst m,
cif_id_code_rel ci
where md.ac_id = m.ac_id
and cb.cif_id = m.cif_id
and m.cif_id = cc.cif_id
and m.cif_id = ci.cif_id;
可以查到很多结果,但是上面要我在另一个没有任何数据的数据库也执行这个操作,也就是说我要把上面那个from里面的分表数据填上,让另一个数据库的测试人员能够象征性的测试,于是我这样做:
select * from ln_mst where ( cif_id,ac_id) in(
select m.cif_id,m.ac_id from cif_basic_inf cb,cif_id_code_rel ci,mdm_ac_rel ma,cif_comm_inf cc,ln_mst m
where m.cif_id = cb.cif_id
and m.ac_id = ma.ac_id
and cc.cif_id = m.cif_id
and m.cif_id = ci.cif_id
and cb.id_date in ('20040528','20060418','20080327') --挑了3组数据给他们测试
)
以上代码换个表,把每次的执行结果复制过去,于是理论上说在另一个数据库那边执行的时候应该只返回('20040528','20060418','20080327')相应的数据,但是事实却却没有任何数据,为什么呢?
select XXX
from cif_basic_inf cb,
mdm_ac_rel md,
cif_comm_inf cc,
ln_mst m,
cif_id_code_rel ci
where md.ac_id = m.ac_id
and cb.cif_id = m.cif_id
and m.cif_id = cc.cif_id
and m.cif_id = ci.cif_id;
可以查到很多结果,但是上面要我在另一个没有任何数据的数据库也执行这个操作,也就是说我要把上面那个from里面的分表数据填上,让另一个数据库的测试人员能够象征性的测试,于是我这样做:
select * from ln_mst where ( cif_id,ac_id) in(
select m.cif_id,m.ac_id from cif_basic_inf cb,cif_id_code_rel ci,mdm_ac_rel ma,cif_comm_inf cc,ln_mst m
where m.cif_id = cb.cif_id
and m.ac_id = ma.ac_id
and cc.cif_id = m.cif_id
and m.cif_id = ci.cif_id
and cb.id_date in ('20040528','20060418','20080327') --挑了3组数据给他们测试
)
以上代码换个表,把每次的执行结果复制过去,于是理论上说在另一个数据库那边执行的时候应该只返回('20040528','20060418','20080327')相应的数据,但是事实却却没有任何数据,为什么呢?
SELECT * FROM ...?没有用游标,也没有用SELECT INTO 。。FROM?那怎么可能不报错,完整语句贴出来看看
SELECT * FROM ...?没有用游标,也没有用SELECT INTO 。。FROM?那怎么可能不报错,完整语句贴出来看看