SQLserver数据库中所有字段全部一样的重复数据如何删除?
将本数据库中的数据原本是导出到另外一个数据库中,但是忘了选择目标数据库,导致数据仍然是导出到了本数据库中,所有的数据都重复了,现在如何删除也不能直接从数据库中删除,会报图...
将本数据库中的数据原本是导出到另外一个数据库中,但是忘了选择目标数据库,导致数据仍然是导出到了本数据库中,所有的数据都重复了,现在如何删除
也不能直接从数据库中删除,会报图中错误。可以考虑一条一条记录删除。谢谢
已解决
执行如下语句即可
select distinct * into #Tmp from tableName
drop table tableName
select * into tableName from #Tmp
drop table #Tmp 展开
也不能直接从数据库中删除,会报图中错误。可以考虑一条一条记录删除。谢谢
已解决
执行如下语句即可
select distinct * into #Tmp from tableName
drop table tableName
select * into tableName from #Tmp
drop table #Tmp 展开
3个回答
展开全部
找到最大的rowid即可。
Sql代码:
alter proc getNotDupData
as
--clear temp table
delete ODS.dbo.Agent
delete from stage.dbo.tmpDup
delete from stage.dbo.tmpRowNo
delete from stage.dbo.tmpMaxRowNo
--create dup table
insert into stage.dbo.tmpDup
select distinct AgentLogin,AgentSurName,AgentGivenName from stage.dbo.dAgentPerformanceStat
where AgentSurname is not null and agentlogin like '3%' order by AgentLogin
--add rowNo
insert into tmpRowNo
select *,ROW_NUMBER()over(order by AgentLogin) as rowno from tmpDup
--get max rowno
insert into stage.dbo.tmpMaxRowNo
select max(rowno) as 'rowno' from stage.dbo.tmpRowNo group by AgentLogin having count(*)>1
--remove max rowno
delete from stage.dbo.tmpRowNo where rowno in (select * from stage.dbo.tmpMaxRowNo)
--insert into ods
insert into ODS.dbo.Agent select AgentLogin,AgentSurName,AgentGivenName from stage.dbo.tmpRowNo
展开全部
回滚吧!
如果不能回滚,就自己写一个简单的java程序,判断ActionName是否相等,如果数据相同就删除,不是太难 。
如果不能回滚,就自己写一个简单的java程序,判断ActionName是否相等,如果数据相同就删除,不是太难 。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
select distinct 字段1,字段2......字段N into talbe2 from table1
drop table1
rename talbe2 to table1
按这个思路就可以作了
drop table1
rename talbe2 to table1
按这个思路就可以作了
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询