Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/287.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 使用月份表对月份进行分组_Php_Sql_Group By - Fatal编程技术网

Php 使用月份表对月份进行分组

Php 使用月份表对月份进行分组,php,sql,group-by,Php,Sql,Group By,基本上,我想做的是显示我数据库中的结果,按照它们所属的月份分类,我做了一些搜索并尝试了一些示例,但我就是不能让它完美地工作,我想让它这样显示 March Result 1 Result 2 April Result 3 May Result 4 Result 5 Result 6 在另一个线程中使用advice,我创建了一个“months”表,列出了月份,并将结果表分组,如下所示 tid start_date end_date data 我能做的最好的事情就是让它显示月份名称,但是它每月

基本上,我想做的是显示我数据库中的结果,按照它们所属的月份分类,我做了一些搜索并尝试了一些示例,但我就是不能让它完美地工作,我想让它这样显示

March
Result 1
Result 2

April
Result 3

May
Result 4
Result 5
Result 6
在另一个线程中使用advice,我创建了一个“months”表,列出了月份,并将结果表分组,如下所示

tid
start_date
end_date
data
我能做的最好的事情就是让它显示月份名称,但是它每月只显示一个结果,而不是最多显示2-4个结果

这是我在本地机器上用来测试它的查询

"SELECT trips.*, months.* 
FROM trips
RIGHT OUTER JOIN months ON months.month = monthname(trips.start_date) WHERE trips.tid = '$tid' GROUP BY monthname(trips.start_date) ORDER BY trips.start_date");

如果有人能指出我做错了什么,我们将不胜感激。

您应该汇总所有未分组的字段

SELECT sum(trips.data), months.month 
FROM trips
    RIGHT OUTER JOIN months ON months.month = monthname(trips.start_date) WHERE trips.tid = '$tid' 
GROUP BY months.month 
ORDER BY trips.start_date

制作一个sql FIDLE-向我们展示您的表,并告诉我们您想要哪些字段结果1、结果2是什么?它们只是我想要如何显示记录的示例。它们是起始日期为该月的记录。分组依据是否没有任何聚合函数?怎么会?向我们显示输入数据(即表数据)和预期结果。抱歉,我还在学习PHP/SQL,所以不理解这个问题,基本上数据只是开始/结束日期和记录名称,它被用作事件日历。