最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

SqlServer中根據(jù)某幾列獲取重復(fù)的數(shù)據(jù)將其刪除并保留最新一條

 更新時(shí)間:2024年04月28日 14:48:02   作者:Qubernet  
有時(shí)候,我們某個(gè)數(shù)據(jù)表中,可能有幾列的數(shù)據(jù)都是一樣的,此時(shí)我們可能想查詢出這幾列數(shù)據(jù)相同的所有數(shù)據(jù)行,并保留最新一條,將其他重復(fù)的數(shù)據(jù)刪除,這篇文章主要介紹了SqlServer中根據(jù)某幾列獲取重復(fù)的數(shù)據(jù)將其刪除并保留最新一條,感興趣的朋友一起看看吧

有時(shí)候,我們某個(gè)數(shù)據(jù)表中,可能有幾列的數(shù)據(jù)都是一樣的,此時(shí)我們可能想查詢出這幾列數(shù)據(jù)相同的所有數(shù)據(jù)行,并保留最新一條,將其他重復(fù)的數(shù)據(jù)刪除。

??1、ROW_NUMBER函數(shù)

假設(shè)我們有如下數(shù)據(jù)表:

此時(shí)我們可以使用ROW_NUMBER函數(shù),根據(jù)某幾列查詢出重復(fù)數(shù)據(jù)的新的排序列,該排序列就是根據(jù)某幾列重復(fù)數(shù)據(jù)生成的序號(hào)(從1開始),如下所示OrderNo就是我們新生成的列:


--根據(jù)Name和Age這2個(gè)字段進(jìn)行查詢并獲得新的列OrderNo(OrderNo就是根據(jù)Name和Age重復(fù)數(shù)據(jù)生成的序號(hào),從1開始),同時(shí)按照CreateTime降序排列
SELECT *,OrderNo=ROW_NUMBER() OVER(PARTITION BY [Name],Age ORDER BY CreateTime DESC) 
FROM dbo.TestTb

??2、刪除數(shù)據(jù)

有了上述代碼中的排序列,我們就可以知道,OrderNo的值>1的數(shù)據(jù)行都是我們需要?jiǎng)h除的數(shù)據(jù),完整代碼如下所示:

--刪除表TestTb中字段Name和Age同時(shí)重復(fù)的數(shù)據(jù),并保留最新一條
DELETE FROM dbo.TestTb WHERE Id IN(
    --根據(jù)Name和Age這2個(gè)字段查詢出重復(fù)的數(shù)據(jù)
    SELECT Id FROM
    (
		--根據(jù)Name和Age這2個(gè)字段進(jìn)行查詢并獲得新的列OrderNo(OrderNo就是根據(jù)Name和Age重復(fù)數(shù)據(jù)生成的序號(hào),從1開始),同時(shí)按照CreateTime降序排列
		SELECT *,OrderNo=ROW_NUMBER() OVER(PARTITION BY [Name],Age ORDER BY CreateTime DESC) 
		FROM dbo.TestTb
    ) Tmp
    WHERE OrderNo>1
);

執(zhí)行刪除:

刪除后的:

到此這篇關(guān)于SqlServer中根據(jù)某幾列獲取重復(fù)的數(shù)據(jù)將其刪除并保留最新一條的文章就介紹到這了,更多相關(guān)SqlServer獲取重復(fù)的數(shù)據(jù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • sqlserver 臨時(shí)表的用法

    sqlserver 臨時(shí)表的用法

    用于復(fù)雜查詢時(shí)可以用臨時(shí)表來暫存相關(guān)記錄,能夠提高效率、提高程序的可讀性,類似于游標(biāo)中的my_cursor declare my_cursor cursor scroll
    2010-11-11
  • SqlServer 擴(kuò)展屬性的介紹

    SqlServer 擴(kuò)展屬性的介紹

    SqlServer 擴(kuò)展屬性的介紹,需要的朋友可以參考一下
    2013-03-03
  • 深入分析MSSQL數(shù)據(jù)庫中事務(wù)隔離級(jí)別和鎖機(jī)制

    深入分析MSSQL數(shù)據(jù)庫中事務(wù)隔離級(jí)別和鎖機(jī)制

    事務(wù)隔離級(jí)別簡(jiǎn)單的說,就是當(dāng)激活事務(wù)時(shí),控制事務(wù)內(nèi)因SQL語句產(chǎn)生的鎖定需要保留多入,影響范圍多大,以防止多人訪問時(shí),在事務(wù)內(nèi)發(fā)生數(shù)據(jù)查詢的錯(cuò)誤。設(shè)置事務(wù)隔離級(jí)別將影響整條連接。
    2014-08-08
  • 深入淺析SQL Server 觸發(fā)器

    深入淺析SQL Server 觸發(fā)器

    觸發(fā)器是一種特殊的存儲(chǔ)過程,觸發(fā)器是通過事件觸發(fā)可以自動(dòng)調(diào)用執(zhí)行的。在sql2005中,觸發(fā)器可以分為dml觸發(fā)器和ddl觸發(fā)器。下面通過本篇文章給大家深入淺析sqlserver觸發(fā)器,需要的朋友可以參考下
    2015-10-10
  • 如何創(chuàng)建支持FILESTREAM的數(shù)據(jù)庫示例探討

    如何創(chuàng)建支持FILESTREAM的數(shù)據(jù)庫示例探討

    FILESTREAM使用一種特殊類型的文件組,因此在創(chuàng)建數(shù)據(jù)庫時(shí),必須至少為一個(gè)文件組指定 CONTAINS FILESTREAM 子句接下來為你詳細(xì)介紹下如何創(chuàng)建支持 FILESTREAM 的數(shù)據(jù)庫
    2013-03-03
  • sql語法中的concat()函數(shù)詳解

    sql語法中的concat()函數(shù)詳解

    SQL CONCAT 函數(shù)添加兩個(gè)或多個(gè)字符或字符串以在結(jié)果中形成一個(gè)新字符串,這篇文章主要介紹了sql concat()函數(shù),需要的朋友可以參考下
    2022-08-08
  • 數(shù)據(jù)庫 日期加減處理

    數(shù)據(jù)庫 日期加減處理

    對(duì)于日期指定部分的加減,使用DATEADD函數(shù)就可以輕松實(shí)現(xiàn)。
    2009-07-07
  • sqlserver數(shù)據(jù)庫移動(dòng)數(shù)據(jù)庫路徑的腳本示例

    sqlserver數(shù)據(jù)庫移動(dòng)數(shù)據(jù)庫路徑的腳本示例

    前段時(shí)間做過這么一件事情,把原本放在c盤的所有數(shù)據(jù)庫(除了sql server系統(tǒng)文件外)文件Move到D盤,主要是為了方便后續(xù)管理以及減少磁盤I/O阻塞(C,D是2個(gè)獨(dú)立磁盤)。腳本需輸入2個(gè)參數(shù):目標(biāo)數(shù)據(jù)庫名字和目標(biāo)目錄
    2013-12-12
  • SQL中不停機(jī)擴(kuò)容實(shí)現(xiàn)的幾種方法

    SQL中不停機(jī)擴(kuò)容實(shí)現(xiàn)的幾種方法

    不停機(jī)擴(kuò)容是一種在不影響系統(tǒng)正常運(yùn)行的情況下,動(dòng)態(tài)增加資源以提升系統(tǒng)性能和容量的方法,下面就來介紹一下幾種常見的方法,感興趣的可以了解一下
    2025-04-04
  • SqlServer 英文單詞全字匹配詳解及實(shí)現(xiàn)代碼

    SqlServer 英文單詞全字匹配詳解及實(shí)現(xiàn)代碼

    這篇文章主要介紹了SqlServer 英文單詞全字匹配的相關(guān)資料,并附實(shí)例,有需要的小伙伴可以參考下
    2016-09-09

最新評(píng)論

南岸区| 醴陵市| 陕西省| 通渭县| 敦化市| 内丘县| 新邵县| 买车| 闽清县| 蚌埠市| 来宾市| 利川市| 墨玉县| 永寿县| 穆棱市| 富川| 化隆| 崇礼县| 富裕县| 沧源| 鄯善县| 锡林郭勒盟| 汝州市| 开原市| 文登市| 报价| 灵寿县| 裕民县| 江都市| 闽清县| 固始县| 云龙县| 曲阜市| 吴桥县| 布尔津县| 林西县| 南开区| 积石山| 革吉县| 衡南县| 炉霍县|