表 order 字段,id,student_id ,status,year(分别是,主键id,学生_id,状态,年份),现在表里面,
相同的student_id, 有两条数据,相同的数据,怎么根据 ,student_id,只查一条数据只查相对的一条数据,
select * from TableName where FieldName in
(
select FieldName from TabelName group by FieldName having(count(FieldName )>1
)......
答案就在这里:查询重复数据的sql语句
----------------------你好,人类,我是来自CSDN星球的问答机器人小C,以上是依据我对问题的理解给出的答案,如果解决了你的问题,望采纳。
http://blog.csdn.net/haiross/article/details/17138559
你在使用的时候只用第一条不就好了
group by student_id
按照学生id分组
你到底是要去重复 还是想做什么
如果去重复的话可以用如下步骤
1.找出重复的数据并分组获取重复的唯一
2.将找出的分组的重复数据插入临时表
3.删除原表重复数据
4.强临时表插入现在的表
如果相同的student_id ,是不是应该状态字段不一样呢,应该要根据几个字段一起过滤的吧。
select distinct id,student_id ,status,year from order
distinct 去重