gpt4 book ai didi

mysql - 检查同一 post_id 的不同行中的 2 列值时仅获取唯一的 post_id 吗?

转载 作者:行者123 更新时间:2023-11-29 06:31:05 26 4
gpt4 key购买 nike

我有以下 MySQL 命令:

SELECT CASE WHEN pm.meta_key = 'webinar_date' AND pm.meta_value = '20190521' THEN pm.post_id
ELSE NULL
END AS pm_post_id
FROM wp_postmeta AS pm
WHERE pm.meta_key = 'start_time' AND CAST(pm.meta_value AS TIME) <= '21:05:44'
ORDER BY NULL;

我正在尝试获取唯一的 post_id 值,其中 webinar_date 为 20190521 并且时间小于或等于 21:05:44。

根据 wp_postmeta 表中的数据图像,它应该返回行,但我得到的是所有 NULL 值。

enter image description here

我在这个查询中做错了什么?

最佳答案

实际上,您的查询有 AND条件 pm.meta_key ,希望两者都是 'webinar_date''start_time'同时生成任何带有数据的行。这不可能是真的,所以你的所有行都包含 NULL对于 pm_post_id 。您可以通过多种方式解决这个问题,例如用JOIN :

SELECT pm.post_id
FROM wp_postmeta pm
JOIN wp_postmeta pm2 ON pm2.post_id = pm.post_id AND pm2.meta_key = 'webinar_date' AND pm2.meta_value = '20190521'
WHERE pm.meta_key = 'start_time' AND CAST(pm.meta_value AS TIME) <= '21:05:44'

关于mysql - 检查同一 post_id 的不同行中的 2 列值时仅获取唯一的 post_id 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56248110/

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