Sql Server系列:Delete語句

  數據的刪除將刪除表的部分或所有記錄,刪除時能夠指定刪除條件從而刪除一條或多條記錄。若是不指定刪除條件,DELETE語句將刪除表中所有的記錄,清空數據表。express

1 DELETE語法

[ WITH <common_table_expression> [ ,...n ] ]
DELETE 
    [ TOP ( expression ) [ PERCENT ] ] 
    [ FROM ] 
    { { table_alias
      | <object> 
      | rowset_function_limited 
      [ WITH ( table_hint_limited [ ...n ] ) ] } 
      | @table_variable
    }
    [ <OUTPUT Clause> ]
    [ FROM table_source [ ,...n ] ] 
    [ WHERE { <search_condition> 
            | { [ CURRENT OF 
                   { { [ GLOBAL ] cursor_name } 
                       | cursor_variable_name 
                   } 
                ]
              }
            } 
    ] 
    [ OPTION ( <Query Hint> [ ,...n ] ) ] 
[; ]

<object> ::=
{ 
    [ server_name.database_name.schema_name. 
      | database_name. [ schema_name ] . 
      | schema_name.
    ]
    table_or_view_name 
}

2 根據指定條件刪除一條或多條記錄

DELETE FROM [dbo].[Product] WHERE ProductID = 1

3 刪除表中所有記錄

  使用不帶WHERE字句的DELETE語句能夠刪除表中的所有記錄。spa

DELETE FROM [dbo].[Product]

  刪除表中的所有記錄也可使用TRUNCATE語句:code

TRUNCATE TABLE [dbo].[Product]

4 使用 TOP 限制刪除的行數

  當 TOP (n) 子句與 DELETE 一塊兒使用時,將針對隨機選擇的 n 行執行刪除操做。server

DELETE TOP (10) FROM [dbo].[Product]
相關文章
相關標籤/搜索