Сортировка данных из базы данных, чтобы использовать в диаграмме. PHP - PullRequest
0 голосов
/ 10 августа 2011

Я использую высокие графики для отображения графиков на своем веб-сайте. У меня есть таблица базы данных с именем "advertising_clicks". Я хочу, чтобы данные из этой таблицы попали в верхнюю диаграмму. но , я хочу, чтобы данные разделялись, когда наступает новый день.

Изображение моей базы данных: http://awesomescreenshot.com/0cfia2md0

Способ поместить количество кликов (количество найденных строк) в старшую диаграмму следующим образом:

    series: [{
                name: 'Clicks',
                data: [1, 2, 3]
            }],

Способ установки дня в старших чартах таков:

 xAxis: {
                    categories: ['Today', '09-06', '10-06']
                },

Я хочу ограничить данные Х числом дней.

Я думал о том, чтобы сделать это с Массивами, но я просто не уверен, как это сделать. Пожалуйста помоги! :)

1 Ответ

1 голос
/ 10 августа 2011

Вы можете ограничить количество дней, отфильтровав по столбцу даты, например, WHERE 'date' BETWEEN x AND y, и для получения данных по дням используйте GROUP BY 'date'. Таким образом, ваш запрос будет выглядеть примерно так:

SELECT
  count(id) AS Clicks,
  date AS categories
FROM advertisement_clicks
WHERE date BETWEEN x AND y
GROUP BY date
ORDER BY date DESC

Замените x и y диапазоном дат, для которого вы хотите создать диаграмму.

Или, если вы действительно хотите всегда запрашивать x последние дни, используйте (при условии mySQL)

date >= CURRENT_DATE - INTERVAL x DAY

в WHERE вместо date BETWEEN x AND y.

В случае, если в столбце date указана временная метка, вы должны извлечь часть даты для группировки, т.е. предположив, что mySQL GROUP BY DATE(date)

Отформатируйте дату на стороне клиента (для метки «категорий») было бы проще, чем сделать это в SQL (хотя большинство механизмов поддерживают функции форматирования даты).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...