连续两个where

linguojin11 2009-01-13 02:44:00
今天在看一帖子时看到乌龟这样写:
create table tb(name varchar(10) , sex varchar(10) , age int)
insert into tb values('A' , 'M' , 17 )
insert into tb values('B' , 'M' , 22 )
insert into tb values('A' , 'F' , 67 )
insert into tb values('A' , 'M' , 17 )
go
select m.* from tb m
where exists (select 1 from ( select name , sex from tb group by name , sex having count(*) > 1 ) n
where n.name = m.name and n.sex = m.sex
)
请问下大家这是什么格式,为什么可以连续两个where..
...全文
53 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
linguojin11 2009-01-13
  • 打赏
  • 举报
回复
呵呵。。不好意思,刚才看晕了,把where给看成并列语句了,所以就纳闷。。。谢谢。。大家速度太快了
oflying907 2009-01-13
  • 打赏
  • 举报
回复

select m.* from tb m
where
exists (select 1
from ( select name , sex from tb group by name , sex having count(*) > 1 ) n
where n.name = m.name and n.sex = m.sex
)
oraclelogan 2009-01-13
  • 打赏
  • 举报
回复
[Quote=引用楼主 linguojin11 的帖子:]
今天在看一帖子时看到乌龟这样写:
create table tb(name varchar(10) , sex varchar(10) , age int)
insert into tb values('A' , 'M' , 17 )
insert into tb values('B' , 'M' , 22 )
insert into tb values('A' , 'F' , 67 )
insert into tb values('A' , 'M' , 17 )
go
select m.* from tb m
where exists (select 1 from ( select name , sex from tb group by name , sex having count…
[/Quote]

现在明白了没有,楼主!?
oraclelogan 2009-01-13
  • 打赏
  • 举报
回复
[Quote=引用楼主 linguojin11 的帖子:]
今天在看一帖子时看到乌龟这样写:
[/Quote]

兄弟,这是条件子查询啊,where里面套用where啊!
create table tb(name varchar(10) , sex varchar(10) , age int)
insert into tb values('A' , 'M' , 17 )
insert into tb values('B' , 'M' , 22 )
insert into tb values('A' , 'F' , 67 )
insert into tb values('A' , 'M' , 17 )
go
select m.* from tb m
where exists (
select 1 from ( select name , sex from tb group by name , sex having count(*) > 1 ) n
where n.name = m.name and n.sex = m.sex
)
水族杰纶 2009-01-13
  • 打赏
  • 举报
回复
子查询
bennyyyyy 2009-01-13
  • 打赏
  • 举报
回复
不同查询语句的条件
csdyyr 2009-01-13
  • 打赏
  • 举报
回复
子查询

22,209

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧