我想同時插入新資料并與另一個表中的外部左連接值合并。我嘗試通過首先創建值并通過使用聯合來選擇與表左外部連接的兩列進行合并。我可以通過哪些其他方式將左外連接和新創建的值合并到表中?
INSERT INTO Dessert(pie, strawberry)
VALUES('chocolate', '5')
UNION
SELECT cream, iceCream, null
FROM Craving
LEFT JOIN Dessert
ON Craving.cream = Dessert.cream AND Craving.iceCream = Dessert.iceCream
我正在嘗試創建的表
Dessert Craving
cream iceCream pie strawberry cream iceCream
uj5u.com熱心網友回復:
您應該能夠為新值構建一個 select 陳述句,并將其與現有資料的 select 并集:
INSERT INTO Dessert(pie, strawberry)
SELECT 'chocolate' as cream, '5' as iceCream
UNION
SELECT cream, iceCream
FROM Craving LEFT JOIN Dessert
ON Craving.cream = Dessert.cream AND Craving.iceCream = Dessert.iceCream
但是你的模式對我來說沒有多大意義。你在甜點中有田地叫做餡餅、草莓、奶油和冰淇淋?而您正在選擇領域 cream 和 iceCream 但將它們插入到餡餅和草莓中?而 iceCream 是一個存盤為字串的數字欄位?
如果您可以共享您擁有的表結構,這可能會有所幫助。您應該能夠從 mySQL 編輯器中匯出 CREATE 陳述句。此外,如果您可以共享一些示例資料,那就太好了。
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/368591.html
標籤:mysql
