gpt4 book ai didi

mysql - 选择不返回实际值的 IN 子句中的值

转载 作者:行者123 更新时间:2023-11-30 22:25:23 24 4
gpt4 key购买 nike

在下面的查询中

mysql> select
-> what_to_wear_under,
-> (select group_concat(value) from eav_attribute_option_value where option_id in (what_to_wear_under) and store_id = 1 ) as what_to_wear_under
-> from
-> catalog_product_flat_1 where brief_coverage is not null and brief_coverage > 0 limit 1\G
*************************** 1. row ***************************
what_to_wear_under: 2028,2031,2032
what_to_wear_under: Churidar Kurtas
1 row in set, 2 warnings (0.00 sec)

当我在 (what_to_wear_under) 中使用 option_id 时,what_to_wear_under 具有三个值,它只给一个 id 赋值。

但如果我直接使用值,它会正确返回值

mysql> select     what_to_wear_under, (select group_concat(value) from eav_attribute_option_value where option_id in (2028,2031,2032) and store_id = 1  ) as what_to_wear_under from  catalog_product_flat_1 where brief_coverage is not null and brief_coverage > 0 limit 1\G
*************************** 1. row ***************************
what_to_wear_under: 2028,2031,2032
what_to_wear_under: Churidar Kurtas,Denims,Dresses
1 row in set (0.00 sec)

能否请您帮助我们如何修改查询一以获得三个值?

最佳答案

你不能比较 in 像这样的列,无论他包含以逗号分隔的值,它都会将他视为 1 值。

您可以为此使用 like(我不确定 mysql 语法,所以也许您必须使用 concat 对其进行调整):

select
-> what_to_wear_under,
-> (select group_concat(value) from eav_attribute_option_value where what_to_wear_under like concat('%',option_id,'%') and store_id = 1 ) as what_to_wear_under
-> from
-> catalog_product_flat_1 where brief_coverage is not null and brief_coverage > 0 limit 1\G

关于mysql - 选择不返回实际值的 IN 子句中的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35404763/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com