在MySQL查询中,LEFT JOIN中的一列返回“UNKNOWN COLUMN”

时间:2021-12-02 作者:breadwild

这可能更像是一个MySQL问题,但因为我在WordPress,所以我想从这里开始。我的问题是:

$persons = $wpdb->get_results(
    $wpdb->prepare( 
        \'SELECT id, post_name, post_title 
         FROM wp_term_relationships AS tr, wp_posts AS ps 
         LEFT JOIN wp_terms AS wt ON tr.term_taxonomy_id = wt.term_id
         ...\'
         )
    );
下面是返回的错误:

WordPress database error: [Unknown column \'tr.term_taxonomy_id\' in \'on clause\']
我们知道这一点term_taxonomy_id 是中的列wp_term_relationships 所以我不知道为什么列是unknown 除非有关于事物顺序的东西。有什么想法?

1 个回复
SO网友:breadwild

问题是tr.term_taxomony_id 不是两个联接表中的任何一个表中的列,而是语句中进一步提到的另一个表中的列。现在我很清楚,在两个连接的表之间必须有一个公共键。

相关推荐

拥有2个MySQL用户安全吗?

我们有一个WooCommerce网站,它只有一个数据库。在wp配置中。php I设置与数据库的连接:user1 name_of_db psw_for_db_user 我们在办公室安装了一个ERP软件,我们购买了一个软件,可以在ERP和WooCommerce之间同步一些数据(订单、价格、库存…)。该软件(位于ERP和WC之间)需要直接连接到WordPress的数据库。我可以创建一个新的用户和密码来从该软件连接到数据库吗?它安全吗?或者我们将遇到WordPress/WooCommer