程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> SqlServer數據庫 >> 關於SqlServer >> SQLserver2005部分特性小結

SQLserver2005部分特性小結

編輯:關於SqlServer

 關於SQLserver2005的特性,我在下邊給大家介紹下。首先給出T-SQL腳本。

建立一張測試表:

  1. CREATE TABLE TestTable (   
  2. Column1 varchar(1),   
  3. Column2 int

加入一些測試數據:

  1. INSERT INTO TestTable VALUES ('A', 1);
  2. INSERT INTO TestTable VALUES ('A', 1); -- 重復
  3. INSERT INTO TestTable VALUES ('A', 2);
  4. INSERT INTO TestTable VALUES ('B', 1);
  5. INSERT INTO TestTable VALUES ('B', 2);
  6. INSERT INTO TestTable VALUES ('B', 2); --重復
  7. INSERT INTO TestTable VALUES ('C', 2); 

使用sqlserver2005新特性刪除重復記錄:

  1. DELETE
  2. FROM  TestTable
  3. WHERE TestTable.%%lockres%%
  4.       NOT IN (SELECT MIN(b.%%lockres%%)
  5.               FROM   TestTable b
  6.               GROUP BY b.column1, b.Column2); 

sqlserver2008新特性刪除重復記錄:

  1. DELETE
  2. FROM  TestTable
  3. WHERE TestTable.%%physloc%%
  4.       NOT IN (SELECT MIN(b.%%physloc%%)
  5.              FROM   TestTable b
  6.               GROUP BY b.column1, b.Column2); 

當然了如果TestTable 具備主鍵(假設主鍵為ID且identity(1,1)),我們可以通過傳統的T-SQL語句獲取不重復的記錄:

  1. --建立主鍵
  2. alter table TestTable with nocheck add 
  3. id int identity(1,1) primary key
  4. go
  5. --取唯一記錄
  6. select min(ID)from TestTable
  7. group by column1, column2
  8. go 

SQLSERVER2005隨機取數據:

  1. select top 3 * from TestTable order by newid()  

上述語句每次從TestTable內取出的3條隨機記錄。

SQLSERVER2005 row_number 函數:

該函數主要用於sql分頁方面,給出簡單范例代碼:

  1. select * from(
  2.        select id,   column1, column2,   row_number() OVER(order by id desc ) as row from TestTable
  3. ) a
  4.     where   row   between   1   and   3 

這裡id為 TestTable 的自增主鍵,每次按主鍵id降序後取前三條數據行。

查看SQLSERVER2005版本:

  1. SELECT  SERVERPROPERTY('productversion'), SERVERPROPERTY ('productlevel'), SERVERPROPERTY ('edition' 

這裡給出不同版本的SQLSERVER2005版本:

RTM版:

sp3版:

SQLSERVER2005所有版本:

發行版Sqlservr.exe

RTM2005.90.1399

SQL Server 2005 Service Pack 12005.90.2047

SQL Server 2005 Service Pack 22005.90.3042

SQL Server 2005 Service Pack 32005.90.4035

最後,希望本文可以給您帶來幫助。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved