$referrerは唯一の定義された変数です。
main_tableは、ユーザーとリファラーの間の関係を保持します。リファラーには多くのユーザーがいる可能性があります。
user_id | referrer
1 | seller
2 | abother seller
3 | another seller
4 | seller
Secondary_tableはuser_id、meta_key、meta_valueを保持し、last_nameとfirst_nameはmeta_keysです。
user_id | meta_key | meta_value
1 | first_name | John
1 | last_name | Doe
4 | first_name | Betty
4 | last_name | Boo
次の3つのクエリをマージする必要があります
SELECT user_id FROM main_table WHERE referrer = $referrer
SELECT meta_value FROM secondary_table WHERE user_id = $user_id AND meta_key = first_name
SELECT meta_value FROM secondary_table WHERE user_id = $user_id AND meta_key = last_name
$ results = $ wpdb-> get_resultsで使用できるように、1つのクエリにまとめてから、$ resultsをlast_nameでasort()してアルファベット順に出力し、$resultsをforeachのようにエコーします。
foreach ($results as $result) {
echo $result->user_id.' '.$result->first_name.' '.$result->last_name;
}
$ referrer == "seller"の場合、出力は次のようになります。
4 Betty Boo
1 John Doe
その単一のクエリはどのように見えるべきですか?
ご協力いただきありがとうございます。