У меня есть 2 таблицы.пользователи и пользователи_мета.Я хочу, чтобы запрос возвращал всех пользователей, которые имеют sexe = M и user_att1 = 1 (который должен возвращать только mathew), но мне также нужно иметь возможность фильтровать и по другим атрибутам.
users
таблица организована так:
ID | Firstname | Lastname | Sexe etc.
1 Mathew Perkins M
2 Andrea Smith F
3 Andrew Story M
users_meta
таблица организована так:
ID | user_id | meta_key | meta_value
1 | 1 | user_att1 | 1
2 | 1 | user_att2 | 0
3 | 2 | user_att1 | 0
4 | 2 | user_att2 | 1
5 | 3 | user_att1 | 0
6 | 3 | user_att2 | 1
Я пытался использовать group_concat
и concat
и не смог получить желаемый результат.
Это мой текущий запрос, который дает желаемый результат, но я не фильтрую по атрибуту, если это имеет смысл.
SELECT
users.id,users.firstname,
users.lastname,
concat(users_meta.meta_value) as 'user_att1'
FROM users
LEFT JOIN users_meta ON users.id=users_meta.user_id
WHERE users_meta.meta_key='user_att1'
GROUP BY users.id
ORDER BY ID DESC
LIMIT 0, 20
Спасибо за любую помощь или указали мне в правильном направлении