簡體   English   中英

MySQL語法可基於混合變量以及從另一個表中選擇記錄來插入新行

[英]MySQL syntax to insert new rows based on mixed variables plus select records from another table

問題是如何編寫一個MySQL語句,該語句是來自另一個表的變量和數據的組合。

例如,對於表contractor所有記錄,我想將來自contractor idname插入表renewals ……並將變量$foo$bar到同一插入的foobar列中

$foo = 'foo';
$bar = 'bar'

INSERT INTO renewals (id, name, foo, bar)
SELECT id, name FROM contractor

我在如何完成語句的添加方面還處於空白狀態,並且還將不來自表contractor $foo$bar添加到這些新行的每行中。

另外, renewals有一個基於(id, name, foo)的復合鍵(id, name, foo)因此我需要添加

ON DUPLICATE KEY UPDATE bar = '$bar' 

在聲明的末尾。

$query = "INSERT INTO renewals (id, name, foo, bar) "
. "SELECT id, name, '$foo', '$bar' FROM contractor "
. "ON DUPLICATE KEY UPDATE bar = '$bar'";

沒關系$foo$bar都不來自表contractor

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM