Php 从MySql数据库获取按分组的datewise结果
我想从Mysql表中选择数据作为分组数据。我在MySql数据库中有一个如下表Php 从MySql数据库获取按分组的datewise结果,php,mysql,sql,Php,Mysql,Sql,我想从Mysql表中选择数据作为分组数据。我在MySql数据库中有一个如下表 +-----------------------+ | date name | +-----------------------+ | 12/02/2015 computer | | 12/02/2015 mouse | | 12/02/2015 Book | | 13/02/2015 Paper | | 13/02/2015 Pen | | 1
+-----------------------+
| date name |
+-----------------------+
| 12/02/2015 computer |
| 12/02/2015 mouse |
| 12/02/2015 Book |
| 13/02/2015 Paper |
| 13/02/2015 Pen |
| 13/02/2015 Pencil |
+-----------------------+
我想显示如下数据
+---------------+
| date |
+---------------+
| 12/02/2015 |
+---------------+
| name |
+---------------+
| computer |
| mouse |
| Book |
+---------------+
| date |
+---------------+
| 13/02/2015 |
+---------------+
| name |
+---------------+
| Paper |
| Pen |
| Pencil |
+---------------+
我需要这个问题。谢谢
更新
我不想使用group\u concat()
。我认为还有其他方法可以做到这一点。group\u concat()
有一些限制,比如它可以包含一定数量的文本,我正面临这种类型的问题
我想这里有一些解决办法
感谢使用条件SQL函数执行此任务。它将按日期对查询结果进行分组,因此您将按日期对名称进行排序:
SELECT T.date, T.name
FROM TABLE T
GROUPE BY T.date, T.name -- T.name is not necessary
将显示如下所示:
DATE NAME
-------------------
12/02/2015 Computer
12/02/2015 Mouse
12/02/2015 Book
13/02/2015 Paper
13/02/2015 Pen
13/02/2015 Pencil
结果将是
2015年2月12日计算机、鼠标、书本
2015年2月13日纸、笔、铅笔
然后可以循环结果并将名称值分解为数组您自己尝试过什么吗?你做了什么?最近又出现了一个类似的问题。请看:编写您的查询,我们将对其进行编辑。您应该在应用程序(php)代码中处理显示。您的格式不是真正的“数据库”格式。例如,一列中缺少不同的类型。此查询不会返回所有值,也不会返回鼠标、书本、笔和铅笔。您必须将名称合并为一个值我正在寻找没有
组的解决方案\u concat()
。谢谢
select date, group_concat(name) as names
from table
group by date