1. 程式人生 > >SQL重複記錄處理(查詢,過濾,刪除)

SQL重複記錄處理(查詢,過濾,刪除)




= * = = * = = * = = * = = * = = * = = * = = * = = * = = * = = * = = *

作 者: 我本有心

 QQ: 381584252

轉載請註明出處及作者!

版權所有,侵權必究!!! 

 = * = = * = = * = = * = = * = = * = = * = = * = = * = = * = = * = = *

注:此處“重複”非完全重複,意為某欄位資料重複 

HZT表結構

ID              int

Title          nvarchar(50)

AddDate  datetime

資料

 ID
 Title  AddDate
 1  我本有心1  2008-01-17 10:27:24.827
 2  我本有心1  2008-03-17 10:27:21.780
 3  我本有心2  2008-05-17 10:27:30.420
 4  我本有心2  2008-09-17 10:27:30.420
 5  我本有心3  2008-01-20 10:27:30.420
 6  我本有心3  2008-01-15 10:27:30.420
 7  QQ:381584252  2008-01-19 10:27:30.420
 8  QQ:381584252  2008-01-18 10:27:30.420
 9  Email:[email protected]  2001-01-17 10:27:30.420
 10  Email:[email protected]  2009-01-17 10:27:30.420
 11  HZT  2005-01-17 10:27:30.420
 12  1314521  2006-01-17 10:27:30.420
 13  LoveCY  2007-01-17 10:27:30.420
 14  19861108  2008-03-17 10:27:30.420
 15  CY  2008-02-17 10:27:30.420



























一。查詢重複記錄

1。查詢全部重複記錄

Select * From 表 Where 重複欄位 In (Select 重複欄位 From 表 Group By 重複欄位 Having Count(*)>1)

2。過濾重複記錄(只顯示一條)

Select * From HZT Where ID In (Select Max(ID) From HZT Group By Title)

 注:此處顯示ID最大一條記錄

二。刪除重複記錄

 1。刪除全部重複記錄(慎用)

 Delete 表 Where 重複欄位 In (Select 重複欄位 From 表 Group By 重複欄位 Having Count(*)>1)

2。保留一條(這個應該是大多數人所需要的 ^_^)

 Delete HZT Where ID Not In (Select Max(ID) From HZT Group By Title)

 注:此處保留ID最大一條記錄

相關推薦

SQL重複記錄處理(查詢,過濾,刪除)

= * = = * = = * = = * = = * = = * = = * = = * = = * = = * = = * = = * 作 者: 我本有心  QQ: 381584252 轉載請註明出處及作者! 版權所有,侵權必究!!!   = * = = * =

SQL重複記錄查詢的幾種方法

1 查詢表中多餘的重複記錄,重複記錄是根據單個欄位1 select * from TB_MAT_BasicData1 2 where MATNR in ( select MATNR from TB_MAT_BasicData1 group by MATNR having count(MATNR)&

SQL重複記錄處理大全

查詢所有重複標題的記錄: SELECT * FROM t_info a WHERE ((SELECT COUNT(*) FROM t_info WHERE Title = a.Title) > 1) ORDER BY Title DESC 一。查詢重複記錄 1。查詢全部

sql重複資料處理

1、在面試的時候碰到一個 問題,就是讓寫一張表中有id和name 兩個欄位,查詢出name重複的所有資料,現在列下: select * from xi a where (a.username) in (select username from xi group by

(2.8)Mysql之SQL基礎——索引的查詢刪除

sele rom db_name name test unique 查詢 img alt (2.8)Mysql之SQL基礎——索引的查詢與刪除 1、索引查詢 (1)按庫查詢   select * from information_schema.statistics wher

SQL 處理重複記錄(查詢刪除)

--處理表重複記錄(查詢和刪除) /***********************************************************************************************************************

SQL查詢刪除重複記錄

一。查詢重複記錄 1。查詢全部重複記錄 Select * From 表 Where 重複欄位 In (Select 重複欄位 From 表 Group By 重複欄位 Having Count(*)>1) 2。過濾重複記錄(只顯示一條) Select * From H

處理表重復記錄(查詢刪除)

清空表 沒有 distinct union int col () 一個 結果集 --參考 --處理表重復記錄(查詢和刪除) /********************************************************************

python查詢/刪除重複記錄

1:查詢重複項 df.duplicated()返回的是一個布林型Series(返回值是True或者False),表示各行是否是重複行,可以在()內新增列名來查詢某一列是否有重複值,第一個出現的值為False,後邊再出現相同的行為True 完全重複的專案 df.duplicated()&nbs

mysql中刪除重複記錄,並保留重複資料中的一條資料的SQL語句理解

正好想寫一條刪除重複語句並保留一條資料的SQL,網上查了一部分資料寫的很詳細,但還是在這裡寫下自己的理解,以遍後續學習 。如下: 表字段和資料:  SQL語句:  DELETE FROM `user` WHERE id NOT IN(SELECT * FROM(

儲存型XSS攻擊的簡單處理以及資料庫查詢過濾多個欄位重複資料

 問題:儲存型Xss是由於form表單提交的資料,前端和後臺未進行過濾,將一些javascript的腳步語言存入資料庫中。導致再次查詢資料的時候瀏覽器會執行該腳步語言。如:<script>alert("XSS")</script>。 解決方案:主要是後臺的過

記一次mysql去重查詢刪除重複記錄

查詢: select *,id,count(*) as count from artist group by id having count>1; 刪除(刪除order_id值大的): delete from artist where id in( SELECT * from

sql 刪除表中多餘的重複記錄(多個欄位),只保留一條記錄

在網上呢~自己收集了一些關於這方面的知識~  自己整理一下 1.查詢重複記錄 select * from 表名 where 重複欄位 in (select 重複欄位 from 表名 group

postgresql刪除重複記錄的一些相關sql語句

自己在做postgresql中作的正確的語法,SQL語句 原始表test_sql 1、查詢重複欄位的重複數select distinct (f1,f2,f3), count(*) from test_sql group by(f1,f2,f3) 結果 2、select di

Mysql語句查詢指定重複記錄刪除重複記錄僅保留一條【親測可以】

對於髒資料,除了通過程式來修復,也可以通過mysql本身來修復。問題一:查詢指定組合欄位的重複記錄SELECT * FROM tb_teacher a WHERE (a.user_id, a.cr

ORACLE查詢刪除重複記錄三種方法

比如現在有一人員表 (表名:peosons) 若想將姓名、身份證號、住址這三個欄位完全相同的記錄查詢出來  複製程式碼程式碼如下: select p1.*    from persons  p1,persons  p2    where p1.id<>p

SQL語句刪除重複記錄的四種好方法

DECLARE @a int SET @a = 1 DECLARE @t TABLE( id int IDENTITY, a int, b int) DECLARE @dt datetime, @loop int, @id int SET @lo

SQL Server 刪除重複記錄,只保留一條記錄

        有張表格之前沒有設計關鍵欄位的唯一約束,導致有時候執行插入操作時不小心執行了多次就出現了重複記錄,後面重新加入唯一約束,由於已經有了重複記錄,無法新增,需要先刪除重複記錄。         看了網上的一些刪除重複記錄的方法(好像都是轉載於同一篇文章,至少看了

mysql刪除重複記錄只保留一條(一句簡單sql

案例: 目的:根據name和class分組,將ceshi表中相同的資料刪除只保留id最小的那一條。 sql語句如下: DELETE FROM ceshi WHERE id NOT IN (SE

只使用一條sql語句,刪除表中的重複記錄

一個表,表1,ref(唯一值),type(有重複)如何去掉重複記錄。 建表sql語句: -- ---------------------------- -- Table structure for `deletechongfu` -- -------------------