SQL:我可以从其他表中的变量中插入一些字段

sdf*_*for 4 mysql sql

SQL问题

我想知道我是否可以编写单个sql INSERT语句将一行插入表中,其中某些字段来自变量而其他字段来自另一个表.目前我选择tableA,将字段存储在变量中,然后将它们插入tableB.在下面的例子中,我想获得field1,field2以及field3tableA和变量休息.(MySQL的)

$sql = "SELECT field1, field2, field3 FROM tableA where product = 5";
Run Code Online (Sandbox Code Playgroud)

PHP代码

$sql = "INSERT tableB
SET     
fkey = 100,
custid = 10,
product = 5,
field1 = '$field1',
field2 = '$field2',
field3 = '$field3' ";
Run Code Online (Sandbox Code Playgroud)

Guf*_*ffa 7

是的,您只需在选择和插入中混合文字值和字段:

insert into tableB (fkey, custid, product, field1, field2, field3)
select 100, 10, 5, field1, field2, field3
from tableA
where product = 5
Run Code Online (Sandbox Code Playgroud)