2017-04-27 5 views
1

私はこのようなwp_postsとwp_postmetaテーブルに参加したい:wp_postsに参加しているときに、どのようにwp_postmetaテーブルのすべての値を1行に入れることができますか?

SELECT wp_posts.id, wp_posts.post_title, wp_posts.post_author, wp_postmeta.meta_key, wp_postmeta.meta_value 
FROM wp_posts 
LEFT JOIN wp_postmeta ON wp_posts.id = wp_postmeta.post_id 
WHERE post_type = 'job'; 

しかし、私はwp_postmetaテーブルのキーと値のペアの値は1行にする必要があります。

SELECT wp_posts.id, wp_posts.post_title, wp_posts.post_author, wp_postmeta.meta_key1, wp_postmeta.meta_key2, wp_postmeta.meta_key3, wp_postmeta.meta_key4 

この3行はwp_postmetaテーブル内に表示する方法です:

** post_idのmeta_key meta_value ** 23841 job_start 1488386107 23841 job_requirementsヌル 23841 select文は次のようになりますようにjob_employmentフルタイム

selectステートメントを使用して、各post_idのselect文の結果のmeta_valuesを1行にする方法を教えてください。どんな助けもありがとうございます。

答えて

0

wp_postmetaのフィールドにアスタリスク()を追加すると、 wp_postmeta。 つまり、すべての列を取得しています。

SELECT wp_posts.id, wp_posts.post_title, wp_posts.post_author, wp_postmeta.* 
FROM wp_posts 
LEFT JOIN wp_postmeta ON wp_posts.id = wp_postmeta.post_id 
WHERE post_type = 'job'; 

お試しください。

+0

あなたの回答をお寄せいただきありがとうございます。私の問題は、wp_postmetaテーブル内の値が、meta_keyとmeta_valueカラムのキーと値のペアの形式で表示されることです。その値に関連付けられたmeta_keyの列名の下に、すべてのmeta_valuesを1行に表示する方法はありますか? 23841 job_startを1488386107 23841 job_requirementsをnull 23841の参加中に私が一列にすべてmeta_valuesを置くことができ job_employmentフルタイム:彼らはwp_postmetaテーブルに表示されますどのように これはありますか? – vjks

+0

私はあなたがそれをすることはできないと思います。 PHPでスクリプトを作成しないと、表示する方法でデータベースを表示することはできません。これらのすべてを照会することはできますが、実際にはMySQLのみを使用してmeta_keyを列名として使用することはできません。 PHPを使ってそれを実現できます –

0

これは私が探していた解決策です。 post_idのに基づいて、これは私がwp_postsの列の値と一列にwp_postmetaのmeta_valuesを配置することができます:

SELECT wp_posts.ID, wp_posts.post_title, wp_posts.post_author, pm1.meta_value as job_start_date, pm2.meta_value as job_end_date 
FROM wp_posts 
LEFT JOIN wp_postmeta AS pm1 ON (wp_posts.ID = pm1.post_id AND pm1.meta_key='job_start') 
LEFT JOIN wp_postmeta AS pm2 ON (wp_posts.ID = pm2.post_id AND pm2.meta_key='job_end') 
WHERE wp_posts.post_type = 'job'; 

私はこの解決策を見つけたところです:http://subharanjan.com/sql-query-to-get-post-and-its-meta_values-as-one-row-of-record-single-data-grid/

I HADN場合はごめんなさい私の質問にはっきりと枠がついていません。

関連する問題