ホームページ >データベース >mysql チュートリアル >## 同じ MySQL クエリに挿入されたデータを取得するには?
MySQL Insert 後のコンテンツの取得
MySQL テーブルへの行の挿入は簡単です。ただし、同じクエリに挿入された値を取得するのは困難な場合があります。この質問は、単一のクエリで両方のタスクを実行できる可能性を検討します。
この質問は、「item_bug」テーブルの行を「items」テーブルに挿入する必要があるシナリオと、挿入されたデータを提示します。 ID も含めて取得する必要があります。提案された解決策は、INSERT ステートメントを使用して行を挿入し、後続の SELECT ステートメントを使用してそれを取得することです。
ただし、この質問では、両方のタスクを 1 つのクエリで実行することで、より効率的な解決策を模索しています。これを達成するには、答えは「LAST_INSERT_ID()」関数を使用することを提案しています。この関数は、テーブルに挿入された最後の行の ID を返します。 insert ステートメントと select ステートメントを組み合わせることで、別のクエリを必要とせずに挿入されたデータを取得することが可能になります。
提案されたクエリは次のようになります。
INSERT INTO `items` (`item`, `number`, `state`) (SELECT '3', `number`, `state` FROM `item_bug` WHERE `id`='3'); SELECT * FROM `items` WHERE `id`= LAST_INSERT_ID();
このクエリを実行すると、 「item_bug」の行が「items」に挿入され、挿入されたデータ (ID を含む) がすぐに取得され、クエリの結果として返されます。このソリューションにより、挿入されたデータを取得するための別のクエリが不要になり、より効率的で洗練されたアプローチになります。
以上が## 同じ MySQL クエリに挿入されたデータを取得するには?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。