|
|
|
| Друзья, помогите составить правильній запрос.
Надо чтобы:
Сначала выводился раздел, в котором обязательно есть записи за сегодняшнее число (хотя бы одна). Если сегодняшних записей меньше 5-ти, то вывести ближайшие по дате записи этого раздела. Дата в базе в формате: (Y-m-d).
И так пройтись по всем разделам. Т.о. разделы, в которых нет сегодняшних записей будут идти последними (и в них будут выведены только ближайшие по дате записи). У таких разделов приоритет должен быть по ближайшей дате вывода.
Пока дальше нижеприведенного кода мозги никуда не идут.
$res=mysql_query("SELECT * FROM table where date=> NOW() ORDER by `date` asc, `razdel` asc limit 5");
while ($str=mysql_fetch_array($res)) {
$zapis=$str['zapis']; $date=$str['date'];
echo $title."-".$date;
}
|
Но так выводит не так как нужно. Help! | |
|
|
|
|
|
|
|
для: Владимир22
(28.07.2011 в 17:31)
| | Хм... т.е. нужно выводить по 5 записей на раздел и эти записи должны быть сгруппированы по разделам? Вы хотите эту задачу решить именно при помощи одного запроса? | |
|
|
|
|
|
|
|
для: cheops
(28.07.2011 в 18:14)
| | Если нельзя с помощью одного запроса, то любым другим способом!
Не делать же столько запросов, сколько разделов в базе... | |
|
|
|