Php Sql显示结果为1行,而不是重复

Php Sql显示结果为1行,而不是重复,php,mysql,pdo,Php,Mysql,Pdo,你好,我有一张这样的桌子 Name | Date | Email ------+------------+------ Dima | 2013-04-01 | email@yahoo.com Dima | 2013-07-03 | email@yahoo.com Dima | 2013-03-06 | email@yahoo.com Andrei| 2013-01-28 | testemail@yahoo.com Andrei| 2013-01-12 | testemail@

你好,我有一张这样的桌子

Name  | Date       | Email
------+------------+------
Dima  | 2013-04-01 | email@yahoo.com
Dima  | 2013-07-03 | email@yahoo.com
Dima  | 2013-03-06 | email@yahoo.com
Andrei| 2013-01-28 | testemail@yahoo.com
Andrei| 2013-01-12 | testemail@yahoo.com

echo'<table>';
$stmt = $dbh->prepare("SELECT * FROM Users"); 
$stmt->execute();
while ($row = $stmt->fetch())
            {   
$name=$row['Name'];
$date=$row['Date'];
$email=$row['Email'];
<tr>
<td>'.$name.'</td>
<td>'.$date.'</td>
<td>'.$email.'</td>
</tr>
            }
echo'</table>';
此查询将显示数据库中的确切表,我希望显示与Dima相关的所有信息,例如一行

Dima\2013-04-012013-07-032013-03-06\email@yahoo.com

您可以使用GROUP\u CONCAT

在mysql中使用GROUP_CONCAT可以做到这一点, 这将按名称和电子邮件将所有日期分组到一个列组中


GROUP_CONCAT函数使用各种选项将组中的字符串连接成一个字符串

以下说明了GROUP_CONCAT功能:

一, 2. 3. 组_CONCATDISTINCT表达式 按{column_name | usinged_integer | expression}排序 分离器

SELECT Name, GROUP_CONCAT(Date) Date, Email
FROM TableName
GROUP BY Name, Email
select name,email,GROUP_CONCAT(date) date from users group by name, email