求SQL语句:先找出表中所有B字段有相同值的记录,然后在此结果中找出C字段符合某条件的结果。

bug_zj 2003-08-25 09:46:13
如表A中有如下数据:
B C

l 80
l 300
m 300
m 80
j 80
n 80
k 300
按我的要求,首先找出所有B字段有相同值的记录,得结果为:
B C

l 80
l 300
m 300
m 80
再在此结果中找出C值等于300的记录,得结果为:
B C

l 300
m 300

请问如何用一条SQL语句实现?
...全文
146 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
bug_zj 2003-08-25
  • 打赏
  • 举报
回复
急,在线等。
bug_zj 2003-08-25
  • 打赏
  • 举报
回复
如果完成第一步后,即结果为:
B C

l 80
l 300
m 300
m 80
增加要求为:取得B字段中具有相同值的一组值的第一个值,即得结果为:
B C

l 80
m 300
然后再在此结果中取C字段值为300的记录,即最后结果为:
B C

m 300

请问该如何写?
ttt2 2003-08-25
  • 打赏
  • 举报
回复
select * from a where b in (select b from a group by b having count(*)>1) and c=300
herman_chow 2003-08-25
  • 打赏
  • 举报
回复

select * from A where C=300 and B in (select B from A group by B having count(*)>1)
awaysrain 2003-08-25
  • 打赏
  • 举报
回复
按你的意思是这样的

select * from (select a.b b,a.c c from tableA a,tableA b where a.b=b.b) where c=300

不用子查询可以这样
select a.b b,a.c c from tableA a,tableA b where a.b=b.b and a.c=300


我没有试,不晓得有没有错

28,390

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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