SQL语句对返回的结果集里的字段再进行条件查询,在一个结果集显示

如题所述

这个sql可以通过将初始查询结果集用括号括起来当作一个子查询(也可以称之为虚拟表),然后再对其实施进一步筛选从而获得另一个结果集的办法予以实现。
例如列出各科平均分在80到90分的同学姓名和各科平均分
select stu.name,t.平均分 from stu,
(select sid,avg(score) as 平均分 from scores group by sid)t
where stu.sid=t.sid and t.平均分 between 80 and 90;
事实上Sql可以通过这种方法实现多重子查询筛选、嵌套和连接非常方便。
温馨提示:内容为网友见解,仅供参考
第1个回答  2015-06-26
这个sql可以通过将初始查询结果集用括号括起来当作一个子查询(也可以称之为虚拟表),然后再对其实施进一步筛选从而获得另一个结果集的办法予以实现。
例如列出各科平均分在80到90分的同学姓名和各科平均分
select stu.name,t.平均分 from stu,
(select sid,avg(score) as 平均分 from scores group by sid)t
where stu.sid=t.sid and t.平均分 between 80 and 90;
事实上Sql可以通过这种方法实现多重子查询筛选、嵌套和连接非常方便。

SQL语句对返回的结果集里的字段再进行条件查询,在一个结果集显示
这个sql可以通过将初始查询结果集用括号括起来当作一个子查询(也可以称之为虚拟表),然后再对其实施进一步筛选从而获得另一个结果集的办法予以实现。例如列出各科平均分在80到90分的同学姓名和各科平均分 select stu.name,t.平均分 from stu,(select sid,avg(score) as 平均分 from scores group b...

SQL 语句怎么重查询结果中再次查询对应的表
第一步,从表B查询name_id字段的值 第二步,根据第一步的结果,从表A查询name字段的值 第三步,通过SQL来实现,语句如下:select name from Awhere name_id in( select name_id from B where type < '002')以上希望能帮助到你 ...

mysql sql语句中已经将查询结果as给了某个变量 下面还想对变量进行限制...
where cc.b=''你在里层把该查的字段都查好了 as好了 在外层就可以应用where了

用sql语句怎么在结果集里自动添加一个新字段,其值为当前行在结果集中的...
此结果已验证。SELECT (SELECT COUNT(id) FROM 查询表 AS tbl1 WHERE tbl1.id<=tbl2.id) as seq,FROM 查询表 AS tbl2 ORDER BY 1 ;其中 id 为主键 列。查询出来的 结果是0,1,2,3,...。如果要以1,2,3,4,5,6,7,... 开始的则变成:SELECT (SELECT COUNT(id) FR...

...能过sql查询表A表A有字段1 在子查询中条件中找出,并将判断结果生成新...
SELECT a.A from 表名 a where (len('马尾松|杉木|柳杉')-(LEN(REPLACE('马尾松|杉木|柳杉','|','')))+1)=(select count(1) from 表名 where B in ('马尾松','杉木','柳杉') and A=a.A) group by a.A;

SQL循环查询如何合并查询结果到一个表,每个结果表作为一个字段
100)insert into 订单 values(11,'2013-10-01',110)insert into 订单 values(12,'2013-11-01',120)insert into 订单 values(13,'2013-11-01',130)insert into 订单 values(14,'2013-12-01',140)你要查上个月到之前某个月的 所以执行这个 declare @sql varchar(4000)declare @index intset...

SQL语句请教:如何将查询出的多个结果作为条件进行查询?
如何将在表2中的ID号前三位为201,并将查询结果的所有ID作为在表1中查询?请高手帮忙写下正确的SQL语句,谢谢!select * from 表1 where id in (select * from 表2 where ID like '201%') 现在这样会出现“当没有用 EXISTS 引入子查询时,在选择列表中只能... 展开 ...

怎么用Oracle 存过中执行多个查询SQL 并返回结果,SQL和返回结果都存在一...
解决方案一:单表存储结果 思路:要求所有的SQL返回结果集列数不多于N个,然后创建一个N个字段的TYPE,此处假设N=5,代码如下:--创建多个字段的typecreate or replace type test_column_type as object (col_1 varchar2(300),col_2 varchar2(300),col_3 varchar2(300),col_4 varc...

如何在已有的SQL查询的语句中,再添加一个查询条件?
as a left join TBL_TicketType as b on a.TicketType = b.TicketTypeNo )as c where ((c.TicketTypeKind = '2' and c.InDatetime<dateadd(month,-3,getdate()))or (c.TicketTypeKind = '1' and c.InDatetime<dateadd(month,-6,getdate()))and c.票据状态 = ‘未销号’)...

SQL语句如何使用一个表的某个字段的条件查询另外一个表符合这个条件的记...
1、用IN select * from b where id in (select id from a where 条件)2、用JOIN select b.* from b inner join a on b.ID=a.ID where 条件 (如:where a.字段1=1)

相似回答