ホームページ >データベース >mysql チュートリアル >INSERT ステートメントの後で OUTPUT 句を使用して ID 値を取得するにはどうすればよいですか?

INSERT ステートメントの後で OUTPUT 句を使用して ID 値を取得するにはどうすればよいですか?

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 句により、必要に応じて他の関連する列データを柔軟に含めることができます。

以上がINSERT ステートメントの後で OUTPUT 句を使用して ID 値を取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。