За последние 24 часа нас посетили 17534 программиста и 1722 робота. Сейчас ищут 1588 программистов ...

Как определить дату, отстоящую на n дней от заданной ?

Тема в разделе "PHP и базы данных", создана пользователем Dee_mon, 16 май 2006.

  1. Dee_mon

    Dee_mon Активный пользователь

    С нами с:
    16 май 2006
    Сообщения:
    4
    Симпатии:
    0
    Имеется произвольная дата some_date в формате d.m.Y.
    На ее основе рассчитываются begin_date= 01.m.Y(т.е. первое число месяца) и end_date=d-1.m.Y(т.е отстоящая на день от заданной).
    Если some_date= 01.m.Y, то begin_date будет считаться как первое число предыдущего месяца, а end_date, соответственно, как последнее.

    p.s. На основе этих дат строится запрос к БД MySQL на выборку записей, находящихся в интервале между двумя датами. Возможно имеет смысл концы временного интервала определять непосредственно в sql-запросе ?
     
  2. Mavir

    Mavir Guest

    Имеет. В MySQL есть специальные функции которые прибавляют и отнимают временные интервалы.
     
  3. Dee_mon

    Dee_mon Активный пользователь

    С нами с:
    16 май 2006
    Сообщения:
    4
    Симпатии:
    0
    Хотелось бы поподробнее, т.к. с mySQL знаком слабо, а предварительный анализ функций работы с датой рез-тов не дал.
    По сути нужно получить даты, отстоящие на день и на месяц назад (хотя из вопроса все ясно).
     
  4. wolandino

    wolandino Активный пользователь

    С нами с:
    5 фев 2006
    Сообщения:
    193
    Симпатии:
    0
    Адрес:
    Россия, Астрахань
  5. Dee_mon

    Dee_mon Активный пользователь

    С нами с:
    16 май 2006
    Сообщения:
    4
    Симпатии:
    0
    Используя TO_DAYS(), определил вчерашнюю дату, а вот как быть с определением 1-го числа предыдущего месяца пока неясно. Смотрю дальше...
     
  6. Dee_mon

    Dee_mon Активный пользователь

    С нами с:
    16 май 2006
    Сообщения:
    4
    Симпатии:
    0
    Вопрос снимается. Достаточно использовать DATE_ADD() (по крайней мере для меня). Тему можно закрыть. Всем спасибо.