Всем привет! Подскажите как одним запросом взять всю информацию о пользователе. Я использовал такой запрос:
SELECT * FROM users
INNER JOIN users_email ON users_email.user_id = users.id
INNER JOIN users_home_number ON users_home_number.user_id = users.id
INNER JOIN users_mobile_number ON users_mobile_number.user_id = users.id
INNER JOIN users_work_number ON users_work_number.user_id = users.id
Но его минус в том что если например у пользователя не будет указан рабочий номер, то запрос вернет пустые поля.
Cтруктура БД:
Заменить INNER на LEFT
SELECT * FROM users
LEFT JOIN users_email ON users_email.user_id = users.id
LEFT JOIN users_home_number ON users_home_number.user_id = users.id
LEFT JOIN users_mobile_number ON users_mobile_number.user_id = users.id
LEFT JOIN users_work_number ON users_work_number.user_id = users.id
И еще, писать SELECT * крайне не рекомендуется. Указывайте те поля, которые нужны
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости