в общем я строю шкалу дат.
Если в эту дату у пользователя есть запись - то дата должна отображаться в шкале.
Всего на шкале отображается максимум 11 дат.
$dmy - сегодняшняя дата.
plan_realise - дата, на которую запланирована запись.
$query=mysql_query("SELECT DISTINCT plan_realise from user_plan where plan_id in ('{$list_user_plans}') and plan_realise>'$dmy' limit 5");
сначала запросом $query я беру МАКСИМУМ 5 дат(которые больше сегодняшних), если на эти даты есть записи.
$count=mysql_num_rows($query);
$for_limit=5-$count;
$limit=7+$for_limit;
теперь в $limit у меня количество дат, которые должны быть МЕНЬШЕ сегодняшней.
$query2=mysql_query("SELECT DISTINCT plan_realise from user_plan where plan_id in ('{$list_user_plans}') and plan_realise<='$dmy' order by plan_realise desc limit $limit ");
но дело в том, что выборка идет с начала таблицы, и получается так, что если есть , к примеру, 10 дат которые меньше сегодняшней, и подходят под выборку, а $limit =6, то возьмутся первые 6, а до $dmy дело не дойдет.
Как сделать так, чтобы в любом случае взялась $dmy и потом $limit дат, которые меньше $dmy? То есть, чтобы выборка начиналась с $dmy, и шла назад. А не с самого начала и вперед Надеюсь написал понятно )
|