sql选出同时符合多个值记录

813阅读 0评论2012-06-28 nba76ers
分类:Mysql/postgreSQL

Sql代码  收藏代码
  1. create table test (NAME varchar(20) not null, HOBBY varchar(20) not null);      
  2.  insert into test values('Adam','basketball');    
  3.  insert into test values('Bill','basketball');    
  4.  insert into test values('Bill','football');    
  5.  insert into test values('Cyper','basketball');    
  6.  insert into test values('Cyper','badminton');    
  7.  insert into test values('David','basketball');    
  8.  insert into test values('David','badminton');    
  9.  insert into test values('David','table tennis');  

使用SQL语句查出哪些人即会玩basketball又会玩badminton,找出这样的name-hobby组合。(这样表达如何?)

即第5, 6 ,7 ,8行 

 

Sql代码  收藏代码
  1. select *   
  2. from testsql  
  3. WHERE HOBBY='basketball' and NAME in  
  4. (  
  5.       select NAME  
  6.       from testsql  
  7.       where HOBBY ='badminton'  
  8. )  
 

 

上一篇:查询重复记录和删除重复记录
下一篇:数据库中其中的一个表删除数据的时候特别慢