SQL / PHP получают ежедневные записи за последние 30 дней

привет, я пытаюсь использовать график (https://developers.google.com/chart/interactive/docs/gallery/linechart) из диаграммы Google, и я не знаю запроса, чтобы узнать, сколько пациентов приходило в больницу каждый день в течение последних 30 дней, чтобы я мог добавить его в data.addrow на линейной диаграмме
Вот как выглядит моя таблица:

pPatient

pName                 pDate
Sample Name           2017-08-15
Another Name          2017-08-15
Another Name Again    2017-08-15
Name Here             2017-08-14
Name Again            2017-08-13

Мне нужен SQL-запрос, чтобы я мог динамически изменять график

google.charts.load('current', {packages: ['corechart', 'line']});
google.charts.setOnLoadCallback(drawBasic);

function drawBasic() {

var data = new google.visualization.DataTable();
data.addColumn('number', 'Day');
data.addColumn('number', 'Patients');

data.addRows([
"the part where im having a problem"
var options = {
hAxis: {
title: 'Day'
},
vAxis: {
title: 'Number of Patients'
}
};

var chart = new google.visualization.LineChart(document.getElementById('chart_div'));

chart.draw(data, options);
}

я получил код из документации Google, и я немного отредактировал его, чтобы соответствовать моей ситуации

1

Решение

из того, что я могу собрать, все, что вам нужно, это запрос, верно? Я предполагаю, что у вас есть метод для отправки запроса и получения данных.

в этом случае лучшим и простым решением будет простой запрос COUNT с некоторой группировкой.

SELECT COUNT(pName)
FROM pPatient
WHERE DATE(pDate) > CURDATE() - 30

если вы хотите, чтобы они были отсортированы по месяцу, дню и году, вы можете добавить это в конец. он перечислит их по сопоставленным датам, используя pDate в качестве аргумента для сопоставления с ними:

GROUP BY DATE(pDate)
0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector