Таблица выглядит так
обожемой, это EAV. не тестировал, но запросы надо делалть что то типа SELECT user_id FROM user_data f1 join on user_data f16 on f1.user_id = f16.user_id AND ( f6.field_id = 16 AND f16.VALUE = 54)" WHERE ( f1.field_id = 1 AND f1.VALUE LIKE 'Expert') короче каждое свойство надо брать из отдельной таблицы, тоесть по алиасу.
Спасибо попробую. SELECT user_id FROM user_data WHERE (field_id, value) IN ( ( '1', 'Expert') , ('16','54') ) такой вариант работает. Но как ту т использовать LIKE?
тогда и OR работает - это одно и тоже
чисто интересно, сколько разнообразных пользователей и сколько записей в таблице? select count(1) from user_data; select count(user_data) from user_data group by user_data;
Пытаюсь сделать такой поиск пользователей.
Так ты в итоге всё рассказал, а написал наоборот...
SELECT user_id FROM user u join user_data f1 on f1.user_id = u.user_id AND f1.field_id = 16 AND f1.VALUE = 54 join user_data f2 on f2.user_id = u.user_id AND f2.field_id = 17 AND f2.VALUE = 42
Хотя не очень наоборот...
Обсуждают сегодня