2013-03-19 95 views
1

下面是我對WP數據庫的查詢。MYSQL查詢連接表

$letters = $wpdb->get_col(
"SELECT DISTINCT LEFT(post_title,1) AS first_letter FROM $wpdb->posts 
WHERE post_type = '$post_type' AND post_status = 'publish' 
ORDER BY first_letter ASC" 
); 

這是一個嬰兒名字數據庫,我想打一個小部件來單獨的男性/女性,所以我需要做一個查詢像上面,但只有某些postmeta這下面是關鍵和價值我得到的職位正在尋找。

鍵 - spin2

價值 - 男

如何添加到這個查詢,因爲它是在一個不同的表?

謝謝!

回答

1

你只需要使用一個INNER JOIN

SELECT DISTINCT LEFT(posts.post_title,1) AS first_letter 
FROM $wpdb->posts AS posts 
    INNER JOIN $wpdb->postmeta AS meta 
     ON posts.ID = meta.post_id 
WHERE posts.post_type = '$post_type' 
    AND posts.post_status = 'publish' 
    AND meta.meta_key = 'spin2' 
    AND meta.meta_value = 'Male' 
ORDER BY first_letter ASC