SQL语句组合查询问题!(40分)

  • 主题发起人 主题发起人 sailorhdx
  • 开始时间 开始时间
S

sailorhdx

Unregistered / Unconfirmed
GUEST, unregistred user!
学生选课数据库有两个 字段
username 字符型  学生名称
textname 字符型  课程名称

学生 王 在记录中有 3条 也就是他选了3门 课 分别为 A、 B、 C


现在要用一句SQL语句查询出来其他所有与 王 选的课程相同的 人名

只能用一句SQL 嵌套语句  请大家赐教!谢谢!
 
select username,count(textname) from tab
where count(textname)=
(select count(*) from tab where username='王')
and textname in
(select textname from tab where username='王')
group by username;
 
select DISTINCT username from tabel where ( textname in (select textname from table1 where (username="王")));
 
select distinct userName from t where textName in (select textName from t where
userName='王')
给分吧
 
后两种可能出现跟 王 有所选的科与王的其中几门一样的同学
 
SELECT username FROM tab
WHERE textname IN (select TEXTNAME from tab where username='王')
GROUP BY username
HAVING COUNT(*) = (select COUNT(TEXTNAME) from tab where username='王')
 
我也是有问题啊!
比如我 定义了两个变量
val kind (分别代表 一个值 和 一个字段)
我用sql
sql.add('select * from stuinfo');
sql.add('where 下面的格式怎样写啊!');
 
kind=:kind
再sql 中一般这样写
 
可惜上述人的解答都不对:
我提供一个答案(测试过了),:)

select b.username
from table a,table b
where a.textname=b.textname and
a.username<>b.username and
a.username='王' and
group by b.username,a.username
having count(*)=(select count(*) from table where table.username='王')

关键在于使用自连接进行筛选。吃晚饭去了!!!!


 
多人接受答案了。
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
D
回复
0
查看
1K
DelphiTeacher的专栏
D
后退
顶部