我正在尝试运行以下MySQL查询:
INSERT INTO table2 (user_id, url_id, price_target)
VALUES
(
select 1, URL_ID, min(price)
from table1
where price > 0
group by url_id
)
但是得到错误:
为什么呢?我一直在Oracle中运行类似的查询。如果我单独运行子选择,它会按预期选择记录。
由于
答案 0 :(得分:2)
错误消息显示" 检查与您的MySQL服务器版本对应的手册,以获得正确的语法"。是你做的吗? INSERT ... SELECT
Syntax非常明确:
INSERT INTO table2 (user_id, url_id, price_target)
select 1, URL_ID, min(price)
from table1
where price > 0
group by url_id
答案 1 :(得分:1)
在使用INSERT SELECT STATEMENT时,无需添加VALUES()。请参阅下面的修订脚本。
INSERT INTO table2 (user_id, url_id, price_target)
SELECT 1, URL_ID, min(price)
FROM table1
WHERE price > 0
GROUP BY url_id;