首頁 >資料庫 >mysql教程 >如何在使用 OUTPUT 子句的 INSERT 語句後檢索識別值?

如何在使用 OUTPUT 子句的 INSERT 語句後檢索識別值?

Mary-Kate Olsen
Mary-Kate Olsen原創
2025-01-17 12:16:09575瀏覽

How Can I Retrieve Identity Values After an INSERT Statement Using the OUTPUT Clause?

使用 SQL 的 OUTPUT 子句高效率地擷取新插入的行 ID

資料庫操作經常需要檢索同一查詢中新插入行的 ID。 本文示範如何使用強大的 OUTPUT 子句在 SQL 中完成此操作。

SQL 查詢結構

OUTPUT 子句無縫整合到 INSERT 語句中:

<code class="language-sql">INSERT INTO MyTable (Name, Address, PhoneNo)
OUTPUT INSERTED.Id AS @var  --Retrieves the ID
VALUES ('Yatrix', '1234 Address Stuff', '1112223333');</code>

顯示ID

最簡單的方法,直接在查詢結果中顯示新產生的ID:

<code class="language-sql">INSERT INTO MyTable (Name, Address, PhoneNo)
OUTPUT INSERTED.ID
VALUES ('Yatrix', '1234 Address Stuff', '1112223333');</code>

將 ID 儲存在變數中

對於需要在 T-SQL 中進一步處理的更複雜場景,請使用表格變數:

<code class="language-sql">DECLARE @OutputTbl TABLE (ID INT);

INSERT INTO MyTable (Name, Address, PhoneNo)
OUTPUT INSERTED.ID INTO @OutputTbl (ID)
VALUES ('Yatrix', '1234 Address Stuff', '1112223333');</code>

此方法將產生的 ID 儲存在 @OutputTbl 中,以便在 T-SQL 程式碼中啟用後續操作。 OUTPUT 子句提供了根據需要包含其他相關列資料的靈活性。

以上是如何在使用 OUTPUT 子句的 INSERT 語句後檢索識別值?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn