日期:2014-05-17  浏览次数:20807 次

oracle 相关子查询
select sum(t1.sales) from Store_information t1 
  where t1.store_name 
  IN (Select Store_name from Geography t2 where t2.store_name = t1.store_name)



以上sql文一运行就报错,有没有高手给解答一下是什么原因?

------解决方案--------------------
你难道没看出来你的条件矛盾了吗?
不知道你的需求,猜测一下。
SQL code

select sum(t1.sales) from Store_information t1,Geography t2 
  where t1.store_name = t2.store_name;

------解决方案--------------------
select sum(t1.sales) from Store_information t1
where t1.store_name
IN (Select Store_name from Geography t2 ,Store_information t1 where t2.store_name = t1.store_name)

------解决方案--------------------
LZ贴下错误吧,表示没看出来错误在哪。
SQL code

select sum(t.operid) from operskill t 
where t.skillid in (
     select skillid from skillinfo t1 where t.skillid =t1.skillid
);

------解决方案--------------------
SQL code

--別用in,效率低
select sum(t1.sales) from Store_information t1  
  where exists (Select 1 from Geography t2 where t2.store_name = t1.store_name);