2011-04-30 53 views
0

在本月底表現出一定的結果我想顯示有extra1爲meta_key和測試作爲meta_value結果的標題。SQL查詢使用PHP

我的目標是:

  1. 從表wp_postmeta獲得具有extra1meta_key測試meta_value
  2. 使用每一行的POST_IDpost_id,獲取post_title分別在步驟1的每一行。
  3. 打印POST_TITLE

非常感謝你。

回答

0

這是查詢假設您正在使用的wordpress database schema

SELECT post_title 
FROM wp_posts 
WHERE ID IN 
(
    SELECT DISTINCT post_id 
    FROM wp_postmeta 
    WHERE meta_key = 'extra1' AND meta_value = 'test' 
) 

Mairy的評論後秒查詢:

SELECT post_title 
FROM wp_posts 
WHERE ID IN 
(
    SELECT DISTINCT post_id 
    FROM wp_postmeta 
    WHERE meta_key IN('extra1','extra2','extra3') AND meta_value IN('test','test1','test2','test3') 
) 

,那麼你只需要循環個結果集與PHP和然後根據您的喜好打印帖子標題:

//connect to DB then ($query contains the query above) 
$res = mysql_query($query, $db); 
while($row=mysql_fetch_array($res)) 
{ 
    echo($row['post_title']); 
} 
+0

非常感謝您的支持!我如何編輯這個使用AND來滿足多個meta_keys和meta_values? – EnexoOnoma 2011-04-30 22:52:19

+0

看到我的回答編輯 – Dalen 2011-04-30 22:57:27

+0

我接受了你的答案。感謝您的幫助。不過,我想問問這是否是一個緩慢的查詢。 – EnexoOnoma 2011-05-01 01:12:40