【发布时间】:2014-06-24 13:19:34
【问题描述】:
我正在尝试优化 INSERT INTO 语句以仅使用一次子查询,因为它始终是相同的值:
这是我的示例代码
INSERT INTO TABLE1 (id, number) VALUES
((SELECT other_id from TABLE2 WHERE somevalue = "test"), 12),
((SELECT other_id from TABLE2 WHERE somevalue = "test"), 13),
...,
...;
不是 sql 专家,但这看起来不是一个好方法,因为每次插入都会执行相同的子查询。
有其他解决方案吗?
另外,我知道我可以事先选择 ID 并将其存储在这样的变量中(类似伪代码):
$var = mysql_query("SELECT other_id from TABLE2 WHERE somevalue = 'test'")
mysql_query("INSERT INTO TABLE1 (id, number) VALUES
($var, 12),
($var, 13);")
【问题讨论】:
标签: mysql sql subquery insert-into