Как вытащить из БД количество записей по датам?

gavik

Полезный
Регистрация
25 Июл 2010
Сообщения
162
Реакции
15
Этот код должен по идее выводить [дата, число записей за эту дату].
PHP:
$day=24 * 3600;                 // сколько секунд в одном дне
        $hour= 3600;                    // сколько секунд в одном часе      
        $t = round(time() / ($day));    //количество полных пройденных суток      
        $t = time() % ($t * $hour);        //полчаем количество секунд которое прошло в нынешних сутках
        $t = time() - $t;                //количество секунд, соответствующее началу нынешних суток
      
      
        $count_week=0;//количество за неделю
        for ($i = 8; $i > -1 ; $i--)
        {
            $finish = $t - ($i-1)*$day; // начало интервала
            $start = $t - $i*$day;        // конце интервала
                          
            $query = "SELECT * FROM orders  WHERE (date >= $start) AND (date<= $finish) ";      
            $count = mysql_num_rows(mysql_query($query));        //количество записей
          
            $count_week+=$count;
            $points .= '["'.date('d-M-y', ($t - $i*$day)).'",'.$count.'],';
        }

Он в принципе работает, НО. Почему то через день. Не могу понять почему - то работает то нет. Помогите кто знает как вытащить из БД количество записей по датам!
Можно как то через SQL это сделать?
 
Обычно это делают так:
Код:
SELECT COUNT(*) AS cnt FROM orders  WHERE (date >NOW())
Можно было бы конкретней написать выборку между датами, но я не вижу в вопросе, какая задача-то ставилась?
Сейчас она звучит так: у меня есть код, он неправильный, скажите как правильно.

А должен быть вопрос:
1. Есть таблица SQL структуры ...
2. Нужно вывести ... по параметру ...
3. Как реализовать это через SQL?
Сейчас я вижу вопрос №3, а без 1 и 2 предлагается гадать на кофейной гуще.
 
Последнее редактирование:
Обычно это делают так:
Код:
SELECT COUNT(*) AS cnt FROM orders  WHERE (date >NOW())
Можно было бы конкретней написать выборку между датами, но я не вижу в вопросе, какая задача-то ставилась?
Сейчас она звучит так: у меня есть код, он неправильный, скажите как правильно.

А должен быть вопрос:
1. Есть таблица SQL структуры ...
2. Нужно вывести ... по параметру ...
3. Как реализовать это через SQL?
Сейчас я вижу вопрос №3, а без 1 и 2 предлагается гадать на кофейной гуще.

В первой же строчке описание задачи:
Этот код должен по идее выводить [дата, число записей за эту дату].
Т.е есть таблица, любая. Например:
|id| date |
Нужно создать массив [дата, число записей за эту дату].
Пример массива: [01.02.2014, 4], [02.02.2014, 6], [03.02.2014, 1], [04.02.2014, 0], и т.д.
Как это реализовать средствами SQL или PHP чтобы все стабильно работало?
 
Этот код должен по идее выводить [дата, число записей за эту дату].
Хорошо, п.2 вы вроде прояснили, но...
Дата в каком формате? См. п. 1 из моего прошлого вопроса.
 
Хорошо, п.2 вы вроде прояснили, но...
Дата в каком формате? См. п. 1 из моего прошлого вопроса.
Пример массива: [01.02.2014, 4], [02.02.2014, 6], [03.02.2014, 1], [04.02.2014, 0], и т.д.
Разве не понятно по этой строчке?
 
Назад
Сверху