Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/256.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/71.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_Mysql_Select - Fatal编程技术网

Php 选择具有相似名称的行

Php 选择具有相似名称的行,php,mysql,select,Php,Mysql,Select,所以我有一个这样的tbl_总数 Name | Total | Month ========================= David | 87 | Jan Mike | 67 | Jan David | 90 | Feb Mike | 100 | Feb 我想这样展示它。请有人告诉我怎么做,因为我根本不知道如何在PHP中这样显示 Name | Jan | Feb =================== David | 87 | 90

所以我有一个这样的tbl_总数

Name   | Total  |  Month
=========================
David  | 87     | Jan
Mike   | 67     | Jan
David  | 90     | Feb
Mike   | 100    | Feb
我想这样展示它。请有人告诉我怎么做,因为我根本不知道如何在PHP中这样显示

Name   | Jan | Feb
===================
David  | 87  | 90
Mike   | 67  | 100
试试这个

Select Name,SUM(Total),
SUM(case when Month = 'Jan' then total else 0 end ) as Jan,
SUM(case when Month = 'Feb' then total else 0 end ) as Feb
from tbl_total
group by Name

根据需要用不同的月份重复
案例
陈述。

您能展示一下您已经拥有的吗?还有,为什么不在(我的)SQL中合并复制呢?谷歌:“mysql pivot”。谷歌搜索“mysql pivot”会返回到StackOverFlow,因为你已经用PHP标记了它,所以不用担心pivot。相反,只需返回一个有序的结果集,并处理表示层中的任何数据显示问题(例如,一个简单的PHP循环)。有数以十亿计的例子。你不能,但你可以接受这个答案。。与2票相同;)@鸣人:他不是OP。可能很难接受;)@杰尔根德太棒了。。!我发现1个问题,请澄清。如果我把12月份写为
sum(…)as Dec
它会给出错误,但是如果我把
sum(…)写成Dece
它会给出o/p.@Gowri:我更新了答案,并用反勾转义了
Dec
DEC
是一个,如果你想使用它,你需要转义它。@juergend+1。谢谢你。
Select Name,SUM(Total),
SUM(case when Month = 'Jan' then total else 0 end ) as Jan,
SUM(case when Month = 'Feb' then total else 0 end ) as Feb
from tbl_total
group by Name