使用外键的MySQL INSERT语法

时间:2011-10-23 08:44:56

标签: mysql insert foreign-keys

我遇到了这个问题..很快就没问题了,但如果可能,我不想使用多个查询。

我想使用另一个表中的数据在表中插入数据。这是一个例子: 我有table1:

TABLE1
id  name  value  max_data  diff

AND这是table2

TABLE2
id name max_data
1  nm1  8000
2  nm2  9000
3  nm3  9500
4  nm4  9600
...

插入我知道来自table2的id,我想从中使用name和max_data。像这样:

INSERT INTO table1 (value, diff, name, max_data) VALUES (5.0, -0.3, table2.name table2.max_data) WHERE table2.id = 3

1 个答案:

答案 0 :(得分:1)

你是说这个吗?

insert into table1 (value, diff, name, max_data)
select 5.0, -0.3, name, max_data
from table2
where id = 3

您可以在SELECT子句中包含所需的任何文字。您也可以使用此技术一次插入多行。