WordPressのDBに関して、SQL操作で投稿に対応したカスタムフィールドの抽出方法がわかりません。
下記のようなテーブルがあった際に、IDの549に対応するカスタムフィールドを
1件のデータとして抽出するにはどうしたらいいでしょうか。
尚、その際にmeta_keyにアンダーバー(_)が先頭についているレコードは除外をしたいです。
wp_postsテーブル
ID | post_content | post_type 549 | aaaaaaaaa | post 555 | bbbbbbbbb | acf-field
wp_postmetaテーブル
meta_id | post_id | meta_key | meta_value 2281 | 549 | lat | 34.7355884 2282 | 549 | _lat | field_5ebcb731afa8e 2283 | 549 | lng | 135.282661 2284 | 549 | _lng | field_5ebcb761afa8f
抽出したいテーブルのイメージ
→IDの549に対応するカスタムフィールドを1件のデータとして抽出したい
ID | post_content | post_type | lat | lng
549 | aaaaaaaaa | post | 34.7355884 | 135.282661
下記のSQLで抽出をした場合ですと、テーブルの結合はできるのですが、そこからさらに
レコードをまとめることができません。
SELECT * FROM wp_posts JOIN wp_postmeta ON wp_posts.id = wp_postmeta.post_id WHERE wp_posts.post_type="post" AND wp_posts.id="549" AND wp_postmeta.meta_key NOT LIKE '\_%';
回答1件
あなたの回答
tips
プレビュー