保存時のカスタム投稿タイプ (プロパティ) のカスタム メタ値が別のカスタム投稿タイプ (アラート) のメタ値と等しいかどうかを確認するクエリを作成しようとしています。
通常の一致フィールドでこれを機能させることができますが、たとえば、「プロパティ」の「ベッドルーム」が「アラート」の「a_bedrooms_min」と「a_bedrooms_max」の間にある場合など、範囲で機能させようとしています。私のクエリはこれまでのところ次のようになっています。
//Property Meta Fields
$meta_type = 'flat';
$meta_bedrooms = '2';
//Alert Meta Fields
a_bedrooms_min = 1
a_bedrooms_max = 3
SELECT ID
FROM wp_posts
INNER JOIN wp_postmeta m1
ON ( wp_posts.ID = m1.post_id )
INNER JOIN wp_postmeta m2
ON ( wp_posts.ID = m2.post_id )
INNER JOIN wp_postmeta m3
ON ( wp_posts.ID = m3.post_id )
WHERE
wp_posts.post_type = 'alerts'
AND wp_posts.post_status = 'publish'
AND ( m1.meta_key = 'a_property_type' AND m1.meta_value = '$meta_type' )
AND ( m2.meta_key = 'a_bedrooms_min' AND m2.meta_value >= '$meta_bedrooms' )
AND ( m3.meta_key = 'a_bedrooms_max' AND m3.meta_value <= '$meta_bedrooms' )
GROUP BY wp_posts.ID
ORDER BY wp_posts.post_date
DESC;
最後の 2 つの AND は、明らかに私がやろうとしていることでは機能しませんが、どうすればこれを機能させることができますか?
ありがとうロバート