2017-08-19 2 views
-1

AssumsテーブルのMySQLを使用して2 meta_keyのように作成します。は次のようにワードプレスからのmysql

post_id | meta_key  | meta_value 
19  | poster_url | http://exampleimage.com 
19  | vote_average | 7.5 

私は

SELECT * FROM (Select ID,post_date,post_date_gmt,post_content,post_title,post_status,post_name,post_type,meta_key,meta_value as picture from get_movies where meta_key='poster_url' and post_status='publish' and post_type='post') as a, 
(Select meta_value as rate from get_movies where meta_key='vote_average' and post_status='publish' and post_type='post') as b 

使用してみましたが、結果は複製され、 '率' のため欠場している。.. この場合、私は別名を作るだけです。poster_url = picture、vote_average = rate

可能ですか?

+1

どのような結果が欲しいですか? –

+0

@GordonLinoff like post_id |レート|画像 19 | 7.5 | http://exmapleimage.com – Edofx

+0

@GordonLinoff今、私は少し問題がありました。どのように 'WHERE'の後にこの条件を使うことができますか?例: 'post_status = 'publish'とpost_type = 'post'そして meta_key 「%7%」のようなpost_titleや、「 – Edofx

答えて

0

何らかの理由で、私は、これはあなたが望むかもしれないと思う:

Select ID, post_date, post_date_gmt, post_content, post_title, 
     post_status, post_name, post_type, 
     max(case when meta_key = 'poster_url' then meta_value end) as picture, 
     max(case when meta_key = 'vote_average' then meta_value end) as rating 
from get_movies 
where post_status = 'publish' and post_type = 'post' and 
     meta_key in ('poster_url', 'vote_average') 
group by ID, post_date, post_date_gmt, post_content, post_title, 
     post_status, post_name, post_type; 

それは、二つの異なる列のメタキーの値を返します。

+0

」などのポストタイトルがありました。ありがとうございました! – Edofx

+0

のような作品で、ちょっとした問題がありました。例: 'post_status = 'publish'とpost_type = 'post'で、 meta_key in( 'poster_url'、 'vote_average'、 'category')とpost_title like '%7 % 'OR VOTE_AVERAGE LIKE'%7% '' – Edofx

+0

@ Edofx。 。 。あなたは 'HAVING'節を使います。 –

関連する問題