gpt4 book ai didi

mysql - 如何在 GROUP BY 上设置 IF 语句

转载 作者:行者123 更新时间:2023-11-29 04:51:14 25 4
gpt4 key购买 nike

嗨,我有一个令人困惑的查询,这是查询

SELECT meta_value, meta_count, post_id
FROM wp_post_meta
GROUP BY IF(ISNULL(target_key), '', target_key)
ORDER BY `meta_count` DESC
LIMIT 30

有些目标键是空的,但有些是值存在,如果 target_key 是值存在,我怎么能得到结果使它 GROUP BY 但如果空 GROUP BY 禁用

谁能帮帮我?

最佳答案

target_keynull 时,您可以使用每条记录的唯一值作为分组依据,这样这些记录将各自归入自己的组。例如,如果 post_id 是表的键,您可以按它进行分组。如果键可能具有与 target_key 字段相同的值,您可能需要为不同的值添加前缀:

GROUP BY IF(ISNULL(target_key), 'x' + post_id, 'y' + target_key)

请注意,您的查询是根据 target_key 进行分组的,但是您选择的是其他字段而不使用聚合(最小值、最大值、计数等),因此结果将是任何值每个组内的任意记录。如果这些值对于每个组中的所有记录都不相同,则结果不可预测。

关于mysql - 如何在 GROUP BY 上设置 IF 语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11443314/

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