Мне приходится иметь дело с уже разработанной системой, где у нас есть пользователи, которые настроены на пользователей таблиц mysql. Существует вторая таблица с именем users_preferences. В этой таблице хранятся настройки конфиденциальности пользователя. Все в порядке, за исключением того, что нет необходимости иметь запись для каждого пользователя. Если нет записи, я должен предположить, что пользователь является публичным. Вот в чем проблема - я пытаюсь искать в таблице пользователей, основываясь на таблице users_preferences. То, что у меня пока есть:
SELECT users.id AS id, users.username AS username, users.avatar AS avatar, IF(users_preferences.privacyControls is null OR users_preferences.privacy = 0), 0, 1) AS userPrivacy
FROM users, users_preferences
WHERE users_preferences.userid = users.id AND userPrivacy = 0 AND users.username LIKE '%demo_user%'
Этот запрос недопустим и выдает ошибку, но он даст вам основную идею, что я хочу сделать - я хочу выбрать тех пользователей, которые установили users_preferences.privacy = 0 (ИЛИ такой записи нет).
Заранее спасибо.