首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> SQL Server 資料庫 >> 關於SqlServer

SQL Server 增刪改查隱藏技巧:TOP、WITH TIES、DEFAULT VALUES 與快捷鍵操作

     編輯:關於SqlServer

除了基本的 CRUD 語法,SQL Server 隱藏許多提升開發效率與查詢彈性的小技巧。本文揭露 INSERT DEFAULT VALUES、UPDATE/DELETE TOP、SELECT TOP ... WITH TIES、NULL 值快捷鍵輸入等實用技巧。

一、INSERT 隱藏技巧

1. 僅插入預設值 (DEFAULT VALUES)

INSERT INTO [DBTrain].[dbo].[log_info]
DEFAULT VALUES;

適用於所有欄位皆有預設值或允許 NULL 的資料表,快速產生測試資料。

2. 快捷鍵輸入 NULL 值

  • 在可為 NULL 的欄位中,按 Ctrl + 0 (數字鍵 0) 快速輸入 NULL。
  • 按 Esc 恢復修改前的值。

二、UPDATE 進階用法

1. 更新前 N 筆資料

UPDATE TOP (3) [log_info]
SET info1 = '1001';

搭配 ORDER BY (需透過子查詢或 CTE) 可控制更新哪幾筆。

2. 更新前 N% 資料

UPDATE TOP (80) PERCENT [log_info]
SET info2 = '1002';

依資料表當前筆數計算百分比,四捨五入到整數筆數。

三、DELETE 同樣支援 TOP

DELETE TOP (100) FROM 表名 WHERE 條件;
DELETE TOP (10) PERCENT FROM 表名;

適用於大量資料分批刪除,避免交易日誌暴增與長時間鎖定。

四、SELECT TOP ... WITH TIES

場景:前 N 筆有並列值時,決定是否包含所有並列列

測試資料

ID | Name
1  | A
2  | B
2  | C
2  | D
3  | E

不使用 WITH TIES

SELECT TOP 5 * FROM test ORDER BY id DESC;
-- 結果:ID 3, 2, 2, 2, 1 (僅 5 筆,第 3 個 ID=2 被截斷)

使用 WITH TIES

SELECT TOP 5 WITH TIES * FROM test ORDER BY id DESC;
-- 結果:ID 3, 2, 2, 2, 2, 1 (包含所有 ID=2 的並列列,共 6 筆)

規則: 必須搭配 ORDER BY 使用;若第 N 筆與第 N+1 筆排序鍵值相同,WITH TIES 會額外回傳所有相同鍵值的列。

五、待探索的進階主題

  • $IDENTITY、$ROWGUID 系統欄位引用
  • WRITE 子句進行大型資料類型部分更新
  • OUTPUT 子句捕獲異動前後值

掌握這些隱藏技巧,能在日常開發與維護中寫出更簡潔、彈性且高效的 T-SQL 程式碼。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved