Группировка

  • Автор темы Theodor Fantom
  • Дата начала

Theodor Fantom

Guest
Группировка

Народ Здравствуйте!
Помогите пожалуйста, немогу написать запрос, с группировкой неполучается
есть таблица
id_sender_id|datetime|text
datetime= timestamp(10)
Нужно выбрать все записи где:
sender_id=2 и
исключить MAX(т.е самая последняя по дате) datetime если она меньше чем (т.е не входит) DATE_ADD(NOW() , INTERVAL 24 HOUR)
 

chira

Новичок
Код:
SELECT id_sender_id
FROM mytable
GROUP BY id_sender_id
HAVING datetime < MAX(datetime)
 

Theodor Fantom

Guest
2chira
А как пределать DATE_ADD ?
получается, что вида
SELECT id,sender_id,datetime,text
FROM mlove_opp
WHERE (sender_id=1)
GROUP BY sender_id
HAVING (DATE_ADD (NOW(),INTERVAL -24 HOUR)> MAX(datetime))
где DATE_ADD неработает?

-~{}~ 11.11.05 17:22:

В общем нужно проверить есть ли записи пользователя с sender_id=1 за последние 24 часа
т.е взять самую последнию запись этого пользователя и проверить не была ли она созданна за последнии сутки
 

vw

Новичок
Вам нужно просто проверить? Время не нужно? Тогда так:

SELECT COUNT(id) as cn FROM mlove_opp WHERE (sender_id=1) AND datetime BEETWEN DATE_ADD (NOW(),INTERVAL -24 HOUR) AND NOW()

Если cn !=0 - была за последние сутки
 
Сверху