SQL - Выберите НОВЫЕ значения через определенное время (или идентификатор) - PullRequest
1 голос
/ 15 ноября 2011

Мне нужен SQL в PHP для MySQL.Пожалуйста, просмотрите таблицу ниже:

 | id |       ip       |   time   |
 | -------------------------------|
 | 1    88.207.189.58  1321301482 |
 | 2    76.192.849.84  1321301487 |
 | 3    65.253.192.46  1321301492 |
 | 4    88.207.189.58  1321301522 |
 | 5    12.112.221.22  1321301582 |
 | 6    65.253.192.46  1321301633 |
 | 7    76.192.849.84  1321301657 |
 | 8    76.192.849.84  1321301710 |
 | 9    12.112.221.22  1321301819 |

Мне нужно выбрать IP, которые являются НОВЫМИ после определенного времени

Например: я хочу выбрать строки после времени = 1321301522, но они должны быть новыми, они могут не появиться до этого времени.В этом случае единственным допустимым ip будет 12.112.221.22 (строка 5).

Это не сработает: SELECT ip FROM table_name WHERE time> 1321301522 , поскольку в нем также указан-новые.Возможно, они не появились раньше.

Заранее спасибо !!

Ответы [ 2 ]

4 голосов
/ 15 ноября 2011
SELECT ip
FROM myTable
GROUP BY ip
HAVING MIN(time) >= 1321301522
1 голос
/ 15 ноября 2011
SELECT ip from tableName where time > 1321301522 and NOT EXISTS (SELECT ip from tableName where time <= 1321301522 )

Не уверен, что это лучший способ сделать это, но это один из способов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...