首頁  >  文章  >  資料庫  >  如何在 MySQL 中使用子查詢向表中插入多行?

如何在 MySQL 中使用子查詢向表中插入多行?

DDD
DDD原創
2024-11-01 03:17:02453瀏覽

How Can I Insert Multiple Rows into a Table Using a Subquery in MySQL?

在MySQL 中使用子查詢插入多行

您正在尋找解決方案,用子查詢傳回的多行填充表。您提供的範例查詢嘗試使用巢狀 VALUES 子句來實現此目的,但由於子查詢傳回多行,因此會導致錯誤。

解決錯誤

要解決此問題,您需要避免在 VALUES 子句中嵌套子查詢。相反,使用以下方法將子查詢與名稱的靜態值結合起來:

INSERT INTO Results (People, names)
SELECT d.id, 'Henry'
FROM Names f
JOIN People d ON d.id = f.id

此查詢將傳回多行,其中包含子查詢中的id 與名稱列的靜態字串「Henry」相結合.

說明

透過在SELECT 子句中組合子查詢和靜態值,您可以有效地為子查詢傳回的每一行建立一行。這允許 INSERT 語句成功地將這些行新增到結果表中。

以上是如何在 MySQL 中使用子查詢向表中插入多行?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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