我现在在总数据库里做了一个存储过程,里面有如下查询语句:
  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')相应的数据,但是事实却却没有任何数据,为什么呢?