Отбор строк за последние сутки

Тема в разделе "Базы данных", создана пользователем sesh7, 4 мар 2009.

Статус темы:
Закрыта.
Модераторы: latteo
  1. sesh7

    sesh7 Создатель

    Регистр.:
    4 авг 2008
    Сообщения:
    24
    Симпатии:
    1
    Пожалуйста подскажите как сделать запрос к базе что бы выводились строки только те которые были добавлены за последние 24 часа??? У меня в базе есть поле time с типом timestamp.
     
  2. Sangre

    Sangre Постоялец

    Регистр.:
    12 ноя 2008
    Сообщения:
    51
    Симпатии:
    6
    select * from table where (UNIX_TIMESTAMP(NOW()) - UNIX_TIMESTAMP(time)) < 86400
     
  3. sesh7

    sesh7 Создатель

    Регистр.:
    4 авг 2008
    Сообщения:
    24
    Симпатии:
    1
    если не сложно опиши этот запрос...
     
  4. Sangre

    Sangre Постоялец

    Регистр.:
    12 ноя 2008
    Сообщения:
    51
    Симпатии:
    6
    эээ

    select - извлечь
    * - всё
    from - из
    table - таблицы
    where - где
    ( - скобку открываем
    UNIX_TIMESTAMP(NOW()) - Нынешнее время в секундах по UNIX исчислению
    - - минус
    UNIX_TIMESTAMP(time) - время в записях таблицы
    ) - скобку закрываем
    < - меньше
    86400 - количество секунд в сутках
     
  5. oraculseed

    oraculseed Постоялец

    Регистр.:
    1 янв 2009
    Сообщения:
    152
    Симпатии:
    10
    если там таймстамп можно просто обойтись DATE функциями мускула ... хотя .... всеравно прийдется переводить стамп в дату =)
     
  6. sesh7

    sesh7 Создатель

    Регистр.:
    4 авг 2008
    Сообщения:
    24
    Симпатии:
    1
    Благадарю:thenks: Очень помог.
     
Статус темы:
Закрыта.