查询 Wordpress 数据库时 MySQL LEFT JOIN 错误 1064

Posted

技术标签:

【中文标题】查询 Wordpress 数据库时 MySQL LEFT JOIN 错误 1064【英文标题】:MySQL LEFT JOIN error 1064 when querying Wordpress database 【发布时间】:2018-01-14 00:22:48 【问题描述】:

我正在尝试从 Wordpress 数据库中检索一些数据:

SELECT M.meta_value,wp_users.ID
FROM wp_postmeta AS M 
WHERE meta_key = "_from_email" AND post_id = 277124
LEFT JOIN wp_users ON M.meta_value = wp_users.user_email

在这里,我的意图是获取wp_users 用户的ID,该用户的emailmeta_value 中的一个相同。

但我收到以下错误:

1064 - 您的 SQL 语法有错误;检查与您的 mysql 服务器版本相对应的手册,以了解在 'LEFT JOIN wp_users ON M.meta_value = wp_users.user_email

附近使用的正确语法

您是否看到任何语法错误?

【问题讨论】:

【参考方案1】:

左连接必须在where子句之前声明

SELECT M.meta_value,wp_users.ID
FROM wp_postmeta AS M 
LEFT JOIN wp_users ON M.meta_value = wp_users.user_email
WHERE meta_key = "_from_email" AND post_id = 277124

确保你没有在 where 子句中使用左连接表的列,否则这意味着连接作为内连接工作.. 最终将这些列移动到相关的 ON 子句中

【讨论】:

谢谢,我快疯了,我会考虑你的建议

以上是关于查询 Wordpress 数据库时 MySQL LEFT JOIN 错误 1064的主要内容,如果未能解决你的问题,请参考以下文章

保存/发布 wordpress 时 MySQL 超级 CPU 峰值

在 Wordpress 中使用 JOIN 进行高级 MySQL 查询

在 WordPress 中使用 MySQL 查询检索小部件数据

PHP wordpress 中的一次查询中的双重 MySQL 查询

执行 DELETE 查询时备份 MySQL

数据库:MySQL实战;左链接;查询WordPress数据库中的文章内容