gpt4 book ai didi

mysql - Wordpress/MySql 查询未从 JOIN 的 LEFT 部分生成所有结果

转载 作者:行者123 更新时间:2023-11-29 07:03:02 24 4
gpt4 key购买 nike

我在 MySQL 数据库中工作。

我在 Wordpress 数据库中添加了一个名为“short_url”的自定义字段

我想要数据库中所有帖子的列表以及“short_url”的值(如果帖子具有该值)。但我还是想要所有的帖子。我编写了以下查询并使用了 LEFT 连接,这样即使没有相应的自定义值我也能取回所有帖子,但它不起作用。

SELECT
wp_posts.post_title
, wp_posts.post_date
, wp_postmeta.meta_value
FROM
wp_posts
LEFT JOIN wp_postmeta
ON ( wp_posts.ID = wp_postmeta.post_id)
WHERE (wp_postmeta.meta_key ="short url");

此查询返回 12 个结果,这是有多少篇文章具有自定义值,但我的数据库中有 193 篇文章。

为什么我返回的是一个只有具有“short_url”值的帖子的列表?

如何获得完整列表?

最佳答案

您需要将条件从 WHERE 子句移动到 ON 子句。 WHERE 子句中的条件会影响所有结果。 ON 子句中的条件会影响 JOIN。

SELECT
wp_posts.post_title,
wp_posts.post_date,
wp_postmeta.meta_value
FROM
wp_posts
LEFT JOIN wp_postmeta
ON (wp_posts.ID = wp_postmeta.post_id) AND
(wp_postmeta.meta_key ="short url");

关于mysql - Wordpress/MySql 查询未从 JOIN 的 LEFT 部分生成所有结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8991040/

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