select year,(select sum(salary) from test where year <=t.year) as salary from test t;
我想知道这样的语句遵循什么样的语法,这一块我很空白,请高手多多指点,谢谢!还有这样形势的sql怎么用阿?叫什么查询?是“标量全查询”马?
SELECT (SELECT s1 FROM t2) FROM t1;
SELECT (SELECT s2 FROM t1); 请各位不吝赐教,谢谢!!!!!
我想知道这样的语句遵循什么样的语法,这一块我很空白,请高手多多指点,谢谢!还有这样形势的sql怎么用阿?叫什么查询?是“标量全查询”马?
SELECT (SELECT s1 FROM t2) FROM t1;
SELECT (SELECT s2 FROM t1); 请各位不吝赐教,谢谢!!!!!
select查询语句的精华也在这里,是比较难学的。至于“标量全查询”我还没听说过.
select sum(salary) from test where year <=t.year
这个子查询和外层查询的表之间没有连接条件吗?现在的逻辑是每条test表的数据和内层的test表间都是全连接。
再有一个问题,子查询中的test没有起别名阿,为什么不起别名,这样会导致编译报错的,至少在oracle可能会,
因为year字段是不唯一的,如果你有什么特别的查询逻辑,我倒可以给你些建议,你这个问题的确很难回答的
其实就是子查询一种,当一个查询语句嵌套在另一个查询的查询条件之中时,称为子查询。子查询总是写在圆括号中,可以用在使用表达式的任何地方。 如:嵌套在Select 、Insert 、Update 或Delete语句或其他子查询中的查询。任何允许使用表达式的地方都可以使用子查询。子查询也称为内部查询或内部选择,而包含子查询的语句也称为外部查询或外部选择。
楼主要是想学好子查询的话可以在网上专门找一些题来做,先从简单的开始,一旦入了门,就会感觉很轻松了。