我有一個表,比如與父表table1連接的table2。我也有table3,我想將它的內容複製到table1連接到table1。表3可能在外鍵列中有一些值在表1 &中不可用,當我嘗試複製這些值時會導致錯誤。我怎樣才能解決這個問題,以便只複製在父表中有引用的記錄?無法將記錄複製到引用密鑰表
0
A
回答
0
insert into table2 (col1, col2, ...)
select col1, col2, ... from table3
where table3.refcol in (select keycol from table1)
當然,您需要用實際的列名稱替換樣本。 :-)
+0
這比在kaps發佈的答案中使用的聯接效率低得多。 – 2012-07-20 14:24:30
+0
陳述如此,不知道實際的數據類型,使用的表大小和索引是很奇怪的......我建議對mysql的查詢優化器有一點信任;) – 2012-07-20 16:17:50
+0
Hi Kuba。我的評論適用於任何數據類型,表格大小或索引。使用IN()模擬連接是一種反模式。 – 2012-07-20 17:53:37
1
Insert into Table2 (<columnList>)
Select <columnlist>
From Table3 Inner join Table1
On Table3.fieldFromTable3 = Table1.ReferredFieldFromTable1
根據需要使用列並在Join中提供適當的字段名稱。
相關問題
- 1. 無法複製RSA密鑰
- 2. 爲什麼我無法將SSH密鑰複製到Vagrant VM?
- 3. ansible - 將密鑰複製到授權密鑰文件
- 4. Couchbase密鑰複製
- 5. 如何將密鑰密碼恢復到密鑰庫?
- 6. 無法將記錄從一個表複製到另一個實體框架MVC
- 7. DTrace密鑰記錄器
- 8. Android密鑰記錄器
- 9. 將記錄從一張表複製到另一張沒有重複記錄
- 10. 「錯誤:無法恢復密鑰」當與現有密鑰存儲
- 11. 將陣列密鑰複製到另一個現有陣列密鑰
- 12. 導致:java.security.UnrecoverableKeyException:無法恢復密鑰
- 13. 無法插入重複密鑰SQL
- 14. sqlexception無法插入重複密鑰行
- 15. 更改密鑰ssh後無法登錄
- 16. 將表中的記錄複製到另一個表+添加自己的記錄
- 17. 將Access中的記錄複製到SQL
- 18. 從密鑰複製nodeset到變量
- 19. 如何在忘記密鑰庫後恢復密鑰庫密碼
- 20. 將記錄從一個表複製到另一個表sql
- 21. 在cassandra中複製密鑰?
- 22. 複製java密鑰庫
- 23. Redis複製密鑰級別
- 24. 使用密鑰刪除MySQL表中的重複記錄但不使用主鍵
- 25. MongoDB將密鑰和值從一個密鑰和值複製到另一個密鑰
- 26. 多對多關係更新:無法插入複製密鑰
- 27. 在lightswitch中將一條記錄複製到另一條記錄
- 28. 將一段記錄複製到另一個記錄ind Dynamics NAV
- 29. 無法在Eclipse中的密鑰庫中找到調試密鑰
- 30. Mysql密鑰引用
你能告訴我們你到目前爲止所嘗試過的嗎? – 2012-07-20 13:54:07