У меня есть две таблицы, users
и logins
(временные метки на колонке login_time)Получить результаты MySQL из двух таблиц
Я пытаюсь заглянуть в таблице пользователей, чтобы найти пользователей, которые не вошли в более чем 50 минут ,
Некоторые пользователи никогда не вошли в систему, а это значит, что они еще не имеют записей в таблице логинов, но мне также нужно найти их в результате запроса, потому что у них нет входа.
Это то, что у меня есть, но до сих пор я могу видеть пользователей с регистрационными записями в таблице «logins» более 50 минут, но любой другой пользователь, который никогда не регистрировался, не появляется.
mysql_query("
SELECT *
FROM users l
LEFT JOIN logins h
ON l.id = h.user_id
WHERE abs(timestampdiff(MINUTE,now(), h.`login_time`)) >'50'
")
Если удалить ГДЕ timestampdiff я могу увидеть их все, конечно, но с указанием NULL значение в столбце login_time.
Как я могу показать и других пользователей в результате?
Спасибо.
Вы можете установить отметку времени по умолчанию для -infinity, если пользователь еще не вошёл в систему –
Добавьте 'ИЛИ h.user_id IS NULL' в предложение WHERE ... –