在子查询中,如果想实现如下的功能:
select lib,count(*),select sum(newsNo) from Table1 group by lib
from Tabel1 T1,Table2 T2 where T1.newsNo =T2.newsNo
group by lib
就会提示“子查询返回的值不止一个。”的错误,意思是子查询不能返回多个结果,只能返回一个结果。
因此可以改用如下的方式:
select lib,count(*),select sum(newsNo) from Table1 T1 where T1.lib =Table1.lib
from Tabel1 T1,Table2 T2 where T1.newsNo =T2.newsNo
group by lib
其中原因还是不太懂,还需要高手指点,可能是跟一个sql语句的执行顺序有关吧