+ -
当前位置:首页 → 问答吧 → 转换一句嵌套查询(转化为非嵌套)

转换一句嵌套查询(转化为非嵌套)

时间:2011-11-27

来源:互联网

根据水果查出所有的同类水果,转换成非嵌套查询,感觉很简单可就是写不出来……

SQL code

--原数据
ID          Name                 Class
----------- -------------------- --------------------
1           草莓                   浆果类
2           葡萄                   浆果类
3           杏仁                   坚果类
4           榛子                   坚果类
5           花生                   坚果类

SELECT * 
FROM moral.t_Test
WHERE Class = (SELECT TOP 1 Class FROM moral.t_Test WHERE Name = '草莓')

--查询结果
ID          Name                 Class
----------- -------------------- --------------------
1           草莓                   浆果类
2           葡萄                   浆果类

作者: dz007   发布时间: 2011-11-27

SQL code
create table tb(ID int, Name nvarchar(10), Class nvarchar(10))
insert into tb select 1,'草莓','浆果类'
insert into tb select 2,'葡萄','浆果类'
insert into tb select 3,'杏仁','坚果类'
insert into tb select 4,'榛子','坚果类'
insert into tb select 5,'花生','坚果类'
go
select a.* from tb a inner join tb b on a.Class=b.class where b.Name='草莓'
/*
ID          Name       Class
----------- ---------- ----------
1           草莓         浆果类
2           葡萄         浆果类

(2 行受影响)

*/
go
drop table tb

作者: qianjin036a   发布时间: 2011-11-27

SQL code
SELECT a.* 
FROM moral.t_Test as a,moral.t_Test  as b 
where a.Class=b.Class and b.Name=N'草莓'

作者: roy_88   发布时间: 2011-11-27

热门下载

更多