Php 将mysql查询结果格式化为所需格式

Php 将mysql查询结果格式化为所需格式,php,mysql,Php,Mysql,我正在尝试以下面的格式从MYSQL查询中获取结果 Date: '2016-01-01', Resource_1: 100, Resource_2: 90, Resource_3:30, Resource_4: 20 Date: '2016-01-02', Resource_1: 0, Resource_2: 20, Resource_3:100, Resource_4: 40 Date: '2016-01-03', Resource_1: 70, Resource_2: 40, Resource

我正在尝试以下面的格式从MYSQL查询中获取结果

Date: '2016-01-01', Resource_1: 100, Resource_2: 90, Resource_3:30, Resource_4: 20
Date: '2016-01-02', Resource_1: 0, Resource_2: 20, Resource_3:100, Resource_4: 40
Date: '2016-01-03', Resource_1: 70, Resource_2: 40, Resource_3:0, Resource_4: 50
Date: '2016-01-04', Resource_1: 10, Resource_2: 0, Resource_3:30, Resource_4: 0
我的MYSQL结果的格式如下:

2016-01-01|Resource_1|100
2016-01-01|Resource_2|90
2016-01-01|Resource_3|30
2016-01-01|Resource_4|20
2016-01-02|Resource_1|0
2016-01-02|Resource_2|20
2016-01-02|Resource_3|100
2016-01-02|Resource_4|40
2016-01-03|Resource_1|70
2016-01-03|Resource_2|40   
2016-01-03|Resource_3|0
2016-01-03|Resource_4|50
2016-01-04|Resource_1|10
2016-01-04|Resource_2|0
2016-01-04|Resource_3|30
2016-01-04|Resource_4|0
如何在MYSQL中将其转换为所需的格式

我想提及的是,我的表格结构如下:

DATE|RESOURCE_NAME|MARKS
我使用下面的查询来获得上一个查询结果

SELECT cd.cd_claim_dt AS cdt,res.res_Name AS NAME,
SUM(CASE WHEN MONTH(cd.cd_claim_dt) = 1 AND YEAR(cd.cd_claim_dt) = 2016 THEN    
ct.ct_duration ELSE 0 END) claimed_hrs
FROM 
tbl_claim_data cd, tbl_claim_time ct, tbl_resourceinfo res
WHERE 
ct.cd_slno = cd.cd_slno AND MONTH(cd.cd_claim_dt) = 1 AND   
YEAR(cd.cd_claim_dt) = 2016 AND cd.app_SlNo = 35 AND 
cd.res_slno IN(17,22,23,24) AND res.res_SlNo = cd.res_slno
GROUP BY 
cd.res_slno, cd.cd_claim_dt, cd.cd_status
ORDER BY 
cd.cd_claim_dt
请尝试此查询

select group_concat(concat('date:',DATE,':',RESOURCE_NAME,':',MARKS)
 separator ' , ' )from mytable group by DATE order by DATE desc;

您也可以使用concat_ws()instandofconcat()函数

一些应用程序代码中的一个简单循环就足够了。您需要这方面的帮助,或者如果可能的话,格式化mysql输出。这里有数千篇关于在PHPif中处理mysql结果的文章。您可以在这方面帮助我,这将非常有用。我知道那里有文章。毫无疑问有人会同意的,但代码编写服务也是如此。我们希望了解您为自己采取了哪些步骤/努力。