结合" Select"插入一些行和"值"插入同一查询中的其他行 - mysql

时间:2016-01-27 08:59:01

标签: mysql select insert

我已经找到了答案,但似乎无法找到任何有关它的内容。
是否可以将这两个查询(单独工作)组合成一个查询? Qry 1)这将插入$ ID(作为变量)和从TableB中拉出的名称(与该ID对应)到TableA中。这在TableA中创建了一行。

INSERT INTO `TableA`(`ID`,`Name`) 
            SELECT $ID, Name 
            from `TableB` 
            WHERE `ID`='$ID';

Qry 2)这将$ ID(作为变量)和名称(作为文本)插入TableA。这在TableA中创建了一行。

INSERT INTO `TableA`(`ID`,`Name`) 
            VALUES ('$ID','Changeme!');

1 个答案:

答案 0 :(得分:0)

在select语句中使用列名而不是$ID

INSERT INTO TableA(ID,Name) 
SELECT TableB.ID, TableB.Name from TableB WHERE TableB.ID='$ID'
UNION ALL
SELECT $ID as ID,'changeme!' as name;

使用union组合记录。