Update from Sync Service

This commit is contained in:
FNS Service
2026-04-21 21:15:34 +08:00
parent e927b9c998
commit ff2dc5b648
2 changed files with 103 additions and 58 deletions

View File

@@ -1,15 +1,57 @@
begin tran
# 数据去重方法
> SQL Server 数据去重常用方法
## 方法一:使用 DISTINCT
```sql
select distinct * into #temp from DataSyncStationSX
delete DataSyncStationSX
go
insert DataSyncStationSX select * from #temp Sqlclub
go
drop table #temp
select * from DataSyncStationSX
SELECT DISTINCT * FROM TableName
```
order by sid
commit
## 方法二:临时表去重
```sql
BEGIN TRAN
-- 1. 选中不重复的数据到临时表
SELECT DISTINCT * INTO #temp FROM DataSyncStationSX
-- 2. 删除原表数据
DELETE FROM DataSyncStationSX
-- 3. 从临时表导回
INSERT INTO DataSyncStationSX SELECT * FROM #temp
-- 4. 删除临时表
DROP TABLE #temp
COMMIT
```
## 方法三ROW_NUMBER 去重
```sql
-- 删除重复数据,保留最新一条
DELETE FROM TableName
WHERE ID IN (
SELECT ID FROM (
SELECT ID, ROW_NUMBER() OVER (PARTITION BY duplicate_column ORDER BY created_time DESC) AS rn
FROM TableName
) t
WHERE rn > 1
)
```
## 方法四:查找重复数据
```sql
-- 查找重复记录
SELECT column1, column2, COUNT(*) as cnt
FROM TableName
GROUP BY column1, column2
HAVING COUNT(*) > 1
```
---
> ⚠️ 执行删除前请先备份数据!