使用子选择运行插入时出现 MySQL 错误?

标签 mysql

我正在尝试运行以下 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
)

但是得到错误:

1064 - 您的 SQL 语法有误;检查与您的 MySQL 服务器版本相对应的手册,了解在第 4 行处使用 near 'select 1, URL_ID, min(price) from table1 where price > 0 group by ' 的正确语法

为什么?我一直在 Oracle 中运行类似的查询。如果我单独运行子选择,它会按预期选择记录。

谢谢

最佳答案

错误消息说“检查与您的 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

关于使用子选择运行插入时出现 MySQL 错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29023591/

相关文章:

php - 如何在 Laravel 上执行行计算和 SUM

mysql - sql如何使用不同列的多个案例

php - 使用 PHP 从 Web 表单更新数据表

mysql - 基于 Mysql Case 语句将一张表连接到另一张表

mysql - 使用 putty 查看 mysql blob

mysql - LEFT OUTER JOIN AND WHERE 连接表

mysql - 使用 SQL/关系数据库存储和检索历史数据

PHP MYSQL SELECT 即使有些是空的

mysql - 如何更改我的 sql 以在 mysql 中的 MySql 存储过程中循环?

MYSQL 通配符搜索 - 排序结果问题