如何查询出sql数据库中表中重复的数据。又如何选其中一个进行更新操作?
展开全部
通过 group by 查询sql数据库中表中重复的数据
如:查询姓名相同的学生姓名
select s_name from s_table group by s_name having count(1)>1
至于如何选其中一个进行更新操作,你可以通过
select sno,a.s_name //获得学号和姓名
from s_table inner join ( select s_name from s_table group by s_name having count(1)>1)a on a.s_name=s_table.s_name 查询到相同姓名(假如名字是张三)的不同学号(假如学号分别为0001,0002),然后利用学号进行更新操作
如:update s_table
set s_name='李四',
where sno='0001'
如:查询姓名相同的学生姓名
select s_name from s_table group by s_name having count(1)>1
至于如何选其中一个进行更新操作,你可以通过
select sno,a.s_name //获得学号和姓名
from s_table inner join ( select s_name from s_table group by s_name having count(1)>1)a on a.s_name=s_table.s_name 查询到相同姓名(假如名字是张三)的不同学号(假如学号分别为0001,0002),然后利用学号进行更新操作
如:update s_table
set s_name='李四',
where sno='0001'
2012-05-24
展开全部
select t.empno,count(1)
from emp t
group by t.empno
having count(1)>1;
delete from emp t
where t.emp_name <> (select max(tt.emp_name) from emp tt where tt.empno = t.empno);
如果是随便删一条就行,emp_name 可以换成rowid
from emp t
group by t.empno
having count(1)>1;
delete from emp t
where t.emp_name <> (select max(tt.emp_name) from emp tt where tt.empno = t.empno);
如果是随便删一条就行,emp_name 可以换成rowid
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询