从wp_postmeta表返回多行

时间:2018-01-10 15:25:58

标签: mysql wordpress

我想检索所有有记录的记录     meta_key ='veteran_state' 我通过该状态返回该州退伍军人的所有记录。

wp_metapost有3个meta_keys:

  1. veteran_state
  2. veteran_name
  3. veteran_website
  4. 我一直在研究MySQL中的以下查询:

    SELECT *
    FROM wp_postmeta
    LEFT JOIN wp_posts ON wp_posts.id = wp_postmeta.post_id
    WHERE wp_posts.post_type = 'veterans' 
    AND wp_postmeta.meta_value = 'colorado' 
    AND wp_posts.post_status = 'publish' 
    

    但是,它只返回veteran_state值。

    我想返回该状态的所有值,并将它们渲染到浏览器:

    Veteran                    Website
    John Doe                   http://website.com
    Mary Veteran               http://mywebsite.com
    

    提前感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

试试这个:对单个表进行过滤,然后加入结果。

SELECT A.* FROM
  (SELECT * FROM wp_postmeta WHERE meta_value='colorado') A LEFT JOIN 
  (SELECT * FROM wp_posts WHERE post_type='veterans' AND post_status='publish') B 
ON A.post_id=B.id;