2017-08-15 105 views
1

您好我正在尝试使用google图表中的折线图(https://developers.google.com/chart/interactive/docs/gallery/linechart),并且我不知道每天有多少患者进入医院以查询过去的查询30天,这样我可以把它添加到data.addrow的线型图 这里是我的表是什么样子:SQL/PHP获取过去30天的日常记录

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文档获得了代码,并且我刚刚编辑这有点适合我的情况

回答

0

从我可以收集,你需要的只是查询,对吗?我假设你有一个方法来发送查询并接收数据。

在这种情况下,最好和最简单的解决方案将是一个简单的COUNT查询w /一些分组。

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

如果您希望按月份,日期和年份对它们进行排序,您可以将其添加到最后。它会列出他们的匹配日期,使用pDate作为参数匹配它们:

GROUP BY DATE(pDate) 
+0

谢谢,是的,我已经有方法发送查询唯一的事情我缺少的是查询 – Valkyrja