表示優先度が最も高いグループを選択させようとしています。問題は、IDが最も低いグループを選択し、表示の優先度が最も高いグループを選択する方法がわからないことです。
SQLクエリは次のようになります。
SELECT xf_user_group_relation.user_id ,
xf_user_field_value.field_value,
xf_user_group_relation.user_group_id,
MAX( xf_user_group.display_style_priority ) AS display_style_priority
FROM xf_user_group_relation
INNER JOIN xf_user_group ON xf_user_group_relation.user_group_id = xf_user_group.user_group_id
INNER JOIN xf_user_field_value ON xf_user_group_relation.user_id = xf_user_field_value.user_id
WHERE xf_user_group.display_style_priority >= 500
AND field_id = 'minecraft'
AND xf_user_group_relation.user_group_id NOT IN(21,22)
GROUP BY xf_user_group_relation.user_id,
xf_user_field_value.field_value;
グループはxf_user_group
次の構造になっています。
user_group_id int(10) AUTO_INCREMENT
title varchar(50)
display_style_priority int(10)
user_css text
user_title varchar(100)