SQL中用什么语句去掉表中重复的元组

避如下面有两条相同元组:01Michaelmath02JennyEnglish01Michaelmath... 避如下面有两条相同元组:
01 Michael math
02 Jenny English
01 Michael math
展开
 我来答
limeiaizi
2007-06-09 · 超过33用户采纳过TA的回答
知道答主
回答量:158
采纳率:100%
帮助的人:0
展开全部
删不了。

最好的方法是把ID那列做一个主键,这样在插入时就不会有重复的。在显示的时候倒是可以。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
林正英影迷网
2007-06-09 · TA获得超过273个赞
知道答主
回答量:371
采纳率:0%
帮助的人:197万
展开全部
一般的数据库设计里都是不会存在重复行的,都有个主键约束或唯一约束什么的,sql语句不大好弄,在企业管理器中倒是好办
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wjl5891
2007-06-11
知道答主
回答量:32
采纳率:0%
帮助的人:5.6万
展开全部
create table mytab( id varchar2(2), name varchar2(20), name2 varchar2(20))
insert into mytab
select '01','Michael', 'math' from dual
union all
select '02','Jenny', 'English' from dual
union all
select '01','Michael', 'math' from dual
select distinct * from mytab
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
银怿实问梅
2019-12-05 · TA获得超过1075个赞
知道小有建树答主
回答量:2579
采纳率:100%
帮助的人:14万
展开全部
select
name,ip,min(time)
from
table
group
by
name,ip
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友e085f4d
2007-06-11 · TA获得超过1757个赞
知道小有建树答主
回答量:835
采纳率:0%
帮助的人:419万
展开全部
1、将重复的记录记入temp1表:
select [标志字段id],count(*) into temp1 from [表名]
group by [标志字段id]
having count(*)>1
2、将不重复的记录记入temp1表:
insert temp1
select [标志字段id],count(*) from [表名]
group by [标志字段id]
having count(*)=1
3、作一个包含所有不重复记录的表:
select * into temp2 from [表名]
where 标志字段id in(select 标志字段id from temp1)
4、删除重复表:delete [表名]
5、恢复表:
insert [表名]
select * from temp2
6、删除临时表:
drop table temp1
drop table temp2
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式