Сначала вы сравниваете метку времени с датой.Сначала необходимо выполнить преобразование даты, например, используя UNIX_TIMESTAMP()
5 минут - 300 секунд.Давайте представим, что кто-то присоединился к 50, а NOW()
- это 301 (оно должно быть «новее» ).WHERE timejoined < UNIX_TIMESTAMP(NOW() - INTERVAL 5 MINUTE)
станет -> WHERE 50 < 301 - 300
<- false </p>
Вы хотите написать:
WHERE timejoined > UNIX_TIMESTAMP(NOW() - INTERVAL 5 MINUTE)
Схема (MySQL v5.7)
Запрос № 1
SELECT UNIX_TIMESTAMP(NOW() - INTERVAL 4 MINUTE) > UNIX_TIMESTAMP(NOW() - INTERVAL 5 MINUTE) AS "is 4 minutes ago \"newer\" ?";
| is 4 minutes ago "newer" ? |
| -------------------------- |
| 1 |
Запрос № 2
SELECT UNIX_TIMESTAMP(NOW() - INTERVAL 6 MINUTE) > UNIX_TIMESTAMP(NOW() - INTERVAL 5 MINUTE) AS "is 6 minutes ago \"newer\" ?";
| is 6 minutes ago "newer" ? |
| -------------------------- |
| 0 |
Просмотр на БД Fiddle