gpt4 book ai didi

mysql - SQL AND 运算符无法垂直工作

转载 作者:行者123 更新时间:2023-11-29 06:50:58 24 4
gpt4 key购买 nike

我有一个非常简单的 MySQL 表:

look at the screenshot

我的SQL查询如下:

SELECT rpcf.place_id
FROM rel_place_custom_fields rpcf
WHERE
(
(rpcf.field_id = 21 AND rpcf.field_value = 'Italy')
AND
(rpcf.field_id = 22 AND rpcf.field_value = 'XL')
)

尽管 10035 place_id 项目满足这两个条件,但此查询不会返回任何内容。看起来问题是数据位于两个不同的行中。如何重写查询以获得同时具有 21/Italy 和 22/XL 的 place_ids?

最佳答案

您可以按如下方式重写查询,以获取具有所有这些属性而不仅仅是单个属性的place_id

SELECT 
rpcf.place_id
FROM
rel_place_custom_fields rpcf
GROUP BY rpcf.place_id
HAVING SUM(rpcf.field_id = 21 AND rpcf.field_value = 'Italy')
AND SUM(rpcf.field_id = 22 AND rpcf.field_value = 'XL')

关于mysql - SQL AND 运算符无法垂直工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47528653/

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