MySQL子查询返回多行

哈桑·法鲁克(Hassan Farooq)

我有两张桌子

  • product(product_id,category_id)
  • product_options(option_id,product_id)

我想插入这些产品在product_optionscategory_id=%%

任何建议将不胜感激

这是我的查询:

select (select product_id 
from oc_product 
where oc_product.product_id = oc_product_option.product_id) as product_id,
15 as option_id, '' as value,   
0 as required 
from oc_product_option 
inner join oc_product_to_category c 
on oc_product_option.product_id = c.product_id 
where c.category_id = 98 

我给出了4条记录,但是我想要所有产品category_id = 98,因为我知道我有很多产品category_id = 98

巴尔玛

您应该将其插入oc_product_option表中,而不要与之连接。那只会返回已经具有选项的产品,而不是类别中的所有产品。

INSERT INTO oc_product_option (product_id, option_id, value, required)
SELECT p.product_id, 15 AS option_id, '' AS value, 0 AS required
FROM oc_product AS p
JOIN oc_product_to_category AS c ON o.product_id = c.product_id
WHERE c.category_id = 98

实际上,甚至没有任何理由加入oc_product,因为您没有使用该表中的任何内容。您可以这样做:

INSERT INTO oc_product_option (product_id, option_id, value, required)
SELECT product_id, 15 AS option_id, '' AS value, 0 AS required
FROM oc_product_to_category
WHERE category_id = 98

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

带有子查询的mysql查询返回多行

来自分类Dev

mysql子查询返回多行

来自分类Dev

子查询返回多行

来自分类Dev

使用返回多行的子查询进行更新

来自分类Dev

SQL单行子查询返回多行

来自分类Dev

在Oracle SQL中返回多行的子查询

来自分类Dev

单行子查询返回多行-SQL查询

来自分类Dev

在子查询mysql中返回多行

来自分类Dev

选择案例陈述单行子查询返回多行

来自分类Dev

子查询返回超过1行的MySQL

来自分类Dev

从多个SELECT子查询返回多行

来自分类Dev

ORA-01427单行子查询返回多行

来自分类Dev

MySQL-子查询或联接多行

来自分类Dev

ORA-01427:单行子查询返回多行更新SQL查询

来自分类Dev

Case子查询在where子句中返回太多行

来自分类Dev

PostgreSQL函数从case语句的子查询返回多行

来自分类Dev

MySQL子查询返回多行与子查询选择计数

来自分类Dev

单行子查询返回多行-SQL查询

来自分类Dev

子查询返回超过1行的MySQL

来自分类Dev

mysql-在子查询中获取多行

来自分类Dev

使用不等于时,MySQL子查询返回多行

来自分类Dev

单行子查询返回多行问题

来自分类Dev

我的查询返回多行

来自分类Dev

使用子查询将多行插入MySQL

来自分类Dev

单行子查询返回多行SQL Oracle

来自分类Dev

如何使用多行父查询单行返回编写子查询子查询

来自分类Dev

处理子查询,它为每行返回多行。数据库:Mysql、sql

来自分类Dev

从子查询返回多行

来自分类Dev

MySql 子查询运行而不是返回错误