-1

以下是我的 sql 查询,在其中我试图获取地址相同的人的姓名,但我面临的问题是查询显示正确的计数,但所有姓名都没有按以下方式分组. 请让我知道如何修改以下查询,以便我可以通过下面提到的方式获取地址,并且 count(address) = 1 也应该被忽略。谢谢,

+----------+
 约翰 | 9 号街,H#4
 扎梅| 9 号街,H#4
 罪孽 | 9 号街,H#4
 林恩 | 8 号街,H#9
 锡 | 8 号街,H#9
+----------+
SELECT *,count(address) FROM `student` 
group by address
order by  count(address) desc

SQLFIDDLE: http ://sqlfiddle.com/#!2/6d6ca/2

4

1 回答 1

3

尝试这个:

 SELECT name, count(address) FROM student 
 GROUP BY address 
 ORDER BY count(address), name DESC

编辑:你的意思是这个 group_concat 吗?

   SELECT GROUP_CONCAT(DISTINCT name ORDER BY name DESC SEPARATOR ' ')as name, 
    adress FROM student 
   GROUP BY adress 
  ORDER BY count(adress), name DESC

在这里演示

于 2012-12-30T21:22:30.177 回答