MySQL 插入...选择 #1054 错误

标签 mysql sql stored-procedures mysql-error-1054

有人可以帮忙吗..

SELECT 自己的作品

INSERT 本身与 VALUES 一起也可以工作。

注意:

 products_similar has 2 columns VARCHARS
 get_cheaper() - stored routine returning VARCHAR

我从来没有遇到过 INSERT INTO ... SELECT 问题。

但是当我将它们组合起来时,出现以下错误:

SQL 查询:文档

INSERT INTO `products_similar` (
`product_sku` ,
`better_priced_sku`
)
SELECT p.product_sku sku, get_cheaper(
p.product_sku
)cheaper_sku
FROM jos_vm_product p;

MySQL 说:文档

#1054 - “字段列表”中存在未知列“product_sku”

当我注释掉 get_cheaper(p.product_sku) Cheap_sku 时,它起作用了:

TRUNCATE TABLE `products_similar` ;# MySQL returned an empty result set (i.e. zero rows).
INSERT INTO `products_similar` (
`product_sku` ,
`better_priced_sku`
)
SELECT p.product_sku sku, p.product_sku sku# , get_cheaper(p.product_sku) cheaper_sku

FROM jos_vm_product p;# Affected rows: 43882

最佳答案

这可能是由于重命名所致:SELECT p.product_sku sku。列名称应为product_sku。

关于MySQL 插入...选择 #1054 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1233878/

相关文章:

对行进行分组和连接的 SQL 查询

mysql - 使用左连接并保留左表 ID 的值

mysql - 根据第二列使用同一列的最小值更新列

c# - 发布我的第一个应用程序 -> 权限被拒绝

MySQL 游标获取不工作

sql - 如何处理 "Maximum stored procedure, function, trigger, or view nesting level exceeded (limit 32)."

.net - LinqToSql如何生成存储过程的输出结果

javascript - 将 html <select> 选项设置为基于当前时间的默认值

mysql - Mamp - MySql 无法启动

SQL 联合 : Is the order of duplicate elimination defined?