不可以这么合并:
select sum(b),
(select a from test where c='ccc'),
(select b from test where c='ccc'),
(select c from test where c='ccc')
from test where a=1因为
select a,b,c from test where c='ccc'
可能返回多条
select sum(b) from test where a=1
至多返回一条要合并这么合并
select (select sum(b) from test where a=1) as b,a,b,c from test where c='ccc'ps:结贴的时候不要欺负冒牌,冒牌今天发现有人结贴有问题
select sum(b),
(select a from test where c='ccc'),
(select b from test where c='ccc'),
(select c from test where c='ccc')
from test where a=1因为
select a,b,c from test where c='ccc'
可能返回多条
select sum(b) from test where a=1
至多返回一条要合并这么合并
select (select sum(b) from test where a=1) as b,a,b,c from test where c='ccc'ps:结贴的时候不要欺负冒牌,冒牌今天发现有人结贴有问题
不然我就冤枉了……
那贴不关你事呀,那贴给我一分我就没意见了,问题是错的得了4分,不是你
返回多条的问题我知道,因为实际上只返回一条记录的。
但如果还要求sub(a)呢。
select a,b,c from test where c='ccc'select sum(a), sum(b) from test where a=1我估计
select (select sum(a) from test where a=1) as d,(select sum(b) from test where a=1) as e,a,b,c from test where c='ccc'
会比
select sum(a),sum(b),
(select a from test where c='ccc'),
(select b from test where c='ccc'),
(select c from test where c='ccc')
from test where a=1
效率低---指不发生错误的情况下。我是想知道有没有在这一条语句里实现2次select,即
select a,b,c from test where c='ccc'
而不是
select a from test where c='ccc',
select b from test where c='ccc',
select c from test where c='ccc'