mysql - 插入错误 - 错误代码 1241。操作数应包含 1 列
问题描述
我收到此错误:
错误代码 1241。操作数应包含 1 列
INSERT INTO 66_stock (
product_stock_id,
stock_product,
stock_product_categories,
stock_product_region,
stock_product_type,
stock_product_ranked,
stock_product_status
)
VALUES (
66,
'testaarea',
(
SELECT
product_categories,
product_region,
product_type,
product_ranked,
product_status
FROM website_products
WHERE product_id = 66
)
);
你能帮助我吗 ?
解决方案
MySQL 期望子查询返回单个列——它没有。
您可以将其重写为INSERT ... SELECT
语句,如下所示:
INSERT INTO 66_stock (
product_stock_id,
stock_product,
stock_product_categories,
stock_product_region,
stock_product_type,
stock_product_ranked,
stock_product_status
)
SELECT
product_id,
'testaarea',
product_categories,
product_region,
product_type,
product_ranked,
product_status
FROM website_products
WHERE product_id = 66;
推荐阅读
- javascript - Ag 网格:在运行时自动调整列在 chrome/IE 11 中不起作用
- c++ - 在这个程序中,读取了一个文件,其中包含很多学生。在每一行中都有姓氏
- html - 我无法以角度运行 ngxPrint
- python - Plotly 中子图的相同 x 轴范围
- openstack-horizon - 在控制器节点上配置仪表板时 httpd 服务停止工作
- javascript - 这是一个纯函数吗?
- while-loop - 为什么这要求用户输入两次?
- docker - 在将文件从目标复制到 webapps 时在 Dockerfile 中出现错误
- c++ - 使用 typedef 指针指向类中的函数
- typescript - 将管道应用于控制器中的所有变量出现