[英]MYSQL Insert .. Select - Multiple rows & tables with foreign keys?
我正在使用INSERT .. SELECT從表中“復制”行(具有不同的外鍵)。
效果很好,但是它要插入多行,我現在需要執行另一次INSERT來插入鏈接到上一個SELECT中的每一行的多行...甚至有意義嗎? 哈哈。
基本上,table1和table2之間存在一對多的關系。 table1和table3之間存在一對一的關系。 我將來自table1(及其相關鏈接的table2行)的行“分配”到table3上的新行(我對此具有mysql_insert_id)。 我正在嘗試使用盡可能少的查詢。
我舉一個例子
您有一個products
表,一個options
表和一個option_items
表。 每個option
都有多個option_items
並且每個product
可以應用多個options
。
Product1
對其應用了“ Colour
”選項,“ Colour
具有Blue
和Green
項,“ Product1
也對其應用了“ Size
選項,其中具有“ Small
和“ Large
”項。
我希望使用新的ID復制產品,這意味着復制options
和option_items
表中的行,並重新創建它們的相關外鍵。
我已經創建了新產品並擁有了productid。
現在,我需要復制選項,獲取新option
的ID,復制項目,並將新創建的option
的ID分配給items
(將選項維護到項目關系)。
任何幫助將不勝感激!
很抱歉這個廢話! 我最終只是使用循環而不是復雜的查詢。 可能不是最好的解決方案,但是到目前為止,最直接的方法是:)
感謝您的閱讀。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.