自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

一個SQL Server數(shù)據(jù)庫刪除數(shù)據(jù)集中重復數(shù)據(jù)的例子

數(shù)據(jù)庫 SQL Server
本文通過一個例子介紹了SQL Server數(shù)據(jù)庫中刪除數(shù)據(jù)集中的重復數(shù)據(jù)的操作過程,希望能夠?qū)δ兴鶐椭?/div>

SQL Server數(shù)據(jù)庫操作中,有時對于表中的結果集,滿足一定規(guī)則我們則認為是重復數(shù)據(jù),而這些重復數(shù)據(jù)需要刪除。如何刪除呢?本文我們通過一個例子來加以說明。

例子如下:

如下只要companyName,invoiceNumber,customerNumber三者都相同,我們則認為是重復數(shù)據(jù),下面的例子演示了如何刪除。

 

  1. declare @InvoiceListMaster table ( ID int identity primary key ,    
  2.  
  3. companyName Nchar(20),    
  4.  
  5. invoiceNumber int,    
  6.  
  7. CustomerNumber int,    
  8.  
  9. rmaNumber int )    
  10.  
  11. insert    @InvoiceListMaster    
  12.  
  13. select N'華為', 1001,100,200    
  14.  
  15. union all    
  16.  
  17. select N'華為', 1001,100,300    
  18.  
  19. union all    
  20.  
  21. select N'華為', 1001,100,301    
  22.  
  23. union all    
  24.  
  25. select N'中興', 1002, 200,1         
  26.  
  27. union all    
  28.  
  29. select N'中興', 1002, 200,2    
  30.  
  31. select * from @InvoiceListMaster    
  32.  
  33. DELETE A    
  34.  
  35. from (    
  36.  
  37. select rown = ROW_NUMBER( )over( partition by companyname,    
  38.  
  39. invoicenumber,    
  40.  
  41. customerNumber     
  42.  
  43. order by companyname,    
  44.  
  45. invoicenumber,    
  46.  
  47. customerNumber ),    
  48.  
  49. companyname,    
  50.  
  51. invoicenumber,    
  52.  
  53. customerNumber    
  54.  
  55. from @InvoiceListMaster  )a    
  56.  
  57. where exists ( select 1     
  58.  
  59. from ( select rown = ROW_NUMBER( )over( partition by companyname,    
  60.  
  61. invoicenumber,    
  62.  
  63. customerNumber     
  64.  
  65. order by companyname,    
  66.  
  67. invoicenumber,    
  68.  
  69. customerNumber ),    
  70.  
  71. companyname,    
  72.  
  73. invoicenumber,    
  74.  
  75. customerNumber    
  76.  
  77. from @InvoiceListMaster  ) b    
  78.  
  79. where b.companyName = a.companyName    
  80.  
  81. and b.invoiceNumber = a.invoiceNumber    
  82.  
  83. and b.CustomerNumber = a.CustomerNumber    
  84.  
  85. and a.rown > b.rown    
  86.  
  87. )    
  88.  
  89. select * from @InvoiceListMaster 

 

以上的例子就演示了SQL Server數(shù)據(jù)庫刪除數(shù)據(jù)集中重復數(shù)據(jù)的過程,希望本次的介紹能夠?qū)δ兴斋@!

【編輯推薦】

  1. Oracle數(shù)據(jù)庫賬號頻繁被鎖定的原因排查
  2. Oracle數(shù)據(jù)庫如何創(chuàng)建虛擬列和復合觸發(fā)器
  3. MySQL數(shù)據(jù)庫目錄結構及常用命令的使用總結篇
  4. 利用C#對XML文檔和數(shù)據(jù)庫操作的四個技術節(jié)點
  5. 以MySQL為例介紹數(shù)據(jù)庫測試工具dbmonster的使用
責任編輯:趙鵬 來源: CSDN博客
相關推薦

2011-05-24 10:54:15

數(shù)據(jù)庫重復數(shù)據(jù)刪除

2010-07-21 11:38:59

SQL Server重

2010-07-23 15:09:42

SQL Server刪

2010-07-23 16:21:37

SQL Server重

2010-07-07 16:53:54

SQL Server重

2010-07-08 13:06:05

SQL Server刪

2010-07-26 14:58:26

SQL Server刪

2010-07-26 09:55:55

SQL Server重

2010-06-28 09:53:11

SQL Server數(shù)

2009-01-11 17:32:03

Oracle數(shù)據(jù)庫重復數(shù)據(jù)

2011-03-14 15:47:33

Oracle數(shù)據(jù)庫

2011-07-20 13:18:01

SQLite數(shù)據(jù)庫修改和刪除數(shù)據(jù)

2011-08-03 10:40:17

SQL Server數(shù)全文檢索

2010-04-08 16:28:07

Oracle數(shù)據(jù)庫

2021-11-30 10:00:01

SQL數(shù)據(jù)重復

2010-07-01 12:29:27

SQL Server重

2010-07-14 10:24:25

SQL Server獲

2011-04-01 09:17:36

SQL Server數(shù)據(jù)庫

2010-04-30 16:19:08

Oracle數(shù)據(jù)庫

2011-08-15 11:24:46

SQL Server事務
點贊
收藏

51CTO技術棧公眾號