Bagaimanakah Anda Boleh Memasukkan Baris dan Mendapatkan Data dalam Satu Pertanyaan MySQL?

Mary-Kate Olsen
Lepaskan: 2024-10-25 04:51:29
asal
632 orang telah melayarinya

How Can You Insert Rows and Retrieve Data in a Single MySQL Query?

Memasukkan Baris dan Mendapatkan Data Baharu dalam MySQL

Banyak tugas memerlukan penambahan rekod baharu pada pangkalan data dan seterusnya mengaksesnya. Secara tradisinya, ini melibatkan operasi memasukkan dan mendapatkan semula yang berasingan. Tetapi tahukah anda adalah mungkin untuk menyelesaikan kedua-dua tugas dalam satu pertanyaan?

Memasukkan dan Memilih Nilai Secara Atom

Kuncinya terletak pada penggunaan fungsi LAST_INSERT_ID(). Selepas melaksanakan pernyataan sisipan, fungsi ini mengembalikan ID yang dijana untuk baris yang baru dimasukkan.

Contoh:

Mari kita pertimbangkan contoh yang diberikan dalam soalan:

<code class="sql">INSERT INTO `items` (`item`, `number`, `state`) 
(SELECT '3', `number`, `state` FROM `item_bug` WHERE `id`='3')</code>
Salin selepas log masuk

Untuk mendapatkan ID baris yang disisipkan dan mendapatkan semula nilainya yang lain, anda boleh melaksanakan pertanyaan berikut:

<code class="sql">SELECT * FROM `items` WHERE `id`= LAST_INSERT_ID()</code>
Salin selepas log masuk

Pertanyaan ini akan mengambil keseluruhan baris daripada jadual item yang sepadan dengan baris terakhir yang dimasukkan.

Faedah:

  • Pertanyaan tunggal untuk kedua-dua tugas: Meningkatkan prestasi dan mengurangkan kerumitan kod.
  • Kendalian atom: Dua langkah berlaku dalam satu transaksi, memastikan integriti data.
  • Memudahkan pengambilan data: Pembangun tidak perlu risau tentang menghafal atau mengurus ID baris di luar konteks pertanyaan.

Atas ialah kandungan terperinci Bagaimanakah Anda Boleh Memasukkan Baris dan Mendapatkan Data dalam Satu Pertanyaan MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!