Составить запросс с текущей даты на неделю вперед.

y0yoshi
Дата: 25.01.2013 11:01:59
парни, помогите составить sql запрос.
имеется поля status(строка) значение свободен/занят
, rent_to(поля даты) дата в формате гггг-мм-дд
rent_from(поле даты) гггг-мм-дд
необходимо составить запрос который бы выбирал все поля где status='занят' а rent_from лежало в пределах от сегодняшней (текущей даты) до недели вперед.
другими словами при окончании аренды в течении 1 недели от текущей даты выводить это на некую страницу.
tanglir
Дата: 25.01.2013 11:06:27
y0yoshi,

про between, date_add читали?
y0yoshi
Дата: 25.01.2013 11:12:43
нет не читал, просто не могу понять логику выбора как от текущей даты выбрать за неделю вперед.
DBConstructor
Дата: 25.01.2013 11:20:18
y0yoshi
Дата: 25.01.2013 11:23:51
DBConstructor
y0yoshi, rtfm
http://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html

спасибо, сейчас попробую, возможно то, что нужно.
y0yoshi
Дата: 25.01.2013 11:40:25
2DBConstructor как понял из вашего примера должно выйти что то типа:
$query="SELECT * FROM $table_name where object_status = 'Занят' and rent_to(CURDATE(),INTERVAL 7 DAY)";
но запрос выполняется с ошибкой
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ')' at line 1
tanglir
Дата: 25.01.2013 11:51:39
y0yoshi
rent_to(CURDATE(),INTERVAL 7 DAY)
Ну и где вы такой синтаксис нашли? Цитату дадите?
trew
Дата: 25.01.2013 12:17:51
y0yoshi,

$query="SELECT * FROM $table_name where object_status = 'Занят' 
and rent_from BETWEEN CURDATE() and ADDDATE(CURDATE(), INTERVAL 7 DAY);
y0yoshi
Дата: 25.01.2013 12:21:34
tanglir
y0yoshi
rent_to(CURDATE(),INTERVAL 7 DAY)
Ну и где вы такой синтаксис нашли? Цитату дадите?

походу что то напутал((
попробовал SELECT * FROM $table_name where DATE_SUB(CURDATE(),INTERVAL 7 DAY) <= rent_to"
запрос выполняется, но ответ не выдается, хотя в таблице есть заданное условие.
tanglir
Дата: 25.01.2013 12:30:06
y0yoshi
DATE_SUB(CURDATE(),INTERVAL 7 DAY)
date_sub - это вычитание, а вам на неделю вперёд надо дату. Значит, надо прибавлять. То есть использовать date_add.
Или применять дэйт_саб к рент_фром (но это хуже в плане производительности).

Да вон выше уже за вас написали всё.