数据库group by语句
select*fromhb_student_infowherecard_idin(selectcard_idfromhb_student_infogroupbycard_...
select * from hb_student_info where card_id in(select card_id from hb_student_info group by card_id having count(card_id)>1)
我知道这句的功能是查找出card_id相同的纪录 具体是怎么实现功能的,count函数大于1是什么意思? 展开
我知道这句的功能是查找出card_id相同的纪录 具体是怎么实现功能的,count函数大于1是什么意思? 展开
展开全部
select card_id from hb_student_info group by card_id having count(card_id)>1
group by 是按照card_id分组,配合having做条件筛选
比如hb_student_info中数据如下:
card_id 栏位1 栏位2
001 1 2
001 2 2
001 3 4
002 4 4
003 4 4
003 2 3
通过group by 分组后
card_id
001
002
003
此时在select 中加入count(card_id) 去看 select card_id, count(card_id)from hb_student_info group by card_id
card_id count(card_id)
001 3
002 1
003 2
通过这样的数据就可以看出 只有001和003是符合条件的(即card_id有相同的记录)
in 后面的查询条件就是通过筛选分组后card_id>1的数目找出所有的card_id
group by 是按照card_id分组,配合having做条件筛选
比如hb_student_info中数据如下:
card_id 栏位1 栏位2
001 1 2
001 2 2
001 3 4
002 4 4
003 4 4
003 2 3
通过group by 分组后
card_id
001
002
003
此时在select 中加入count(card_id) 去看 select card_id, count(card_id)from hb_student_info group by card_id
card_id count(card_id)
001 3
002 1
003 2
通过这样的数据就可以看出 只有001和003是符合条件的(即card_id有相同的记录)
in 后面的查询条件就是通过筛选分组后card_id>1的数目找出所有的card_id
莱伯泰科
2024-10-28 广告
2024-10-28 广告
LabTech Group,即北京莱伯泰科仪器股份有限公司,是业界领先的实验室科学仪器与解决方案提供商。我们专注于分析测试仪器的研发、生产和销售,致力于为全球科研工作者、高校及企业实验室提供高性能、高稳定性的产品与服务。通过持续的技术创新与...
点击进入详情页
本回答由莱伯泰科提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询