繁体   English   中英

SQL DISTINCT加计数

[英]SQL DISTINCT plus count

我目前有一张桌子,上面有专辑的名称,艺术家和标题(适用于Mp3)。 目前,我在左侧的网页上使用以下命令显示所有相册名称:

SELEC DISTINCT `album` FROM `mp3`

但我想显示每张专辑旁边的数量,例如:

A Very Good Album (3)

表示该记录中有3个整体。 我可以使用SQL吗? 选择Distinct,还要找出这张专辑有多少张?

与其说是DISTINCTDISTINCT说是按album分组的基本COUNT()聚合

SELECT
  album,
  COUNT(*) AS num_records
FROM 
  mp3
GROUP BY album

如果要在SQL查询内的括号中使用它,请使用CONCAT() 不过,最好将其留给您的应用程序进行显示。

SELECT
  /* The album title, and count in () as one column as a single string */
  /* like "A Very Good Album (3)" */
  CONCAT(album, ' (', COUNT(*), ')') AS album 
FROM
  mp3
GROUP BY album

尝试这个:

SELECT `album`, COUNT(*) FROM `mp3` GROUP BY `album`

您想要一个group by

select album, count(*)
from mp3
group by album

使用group by并像这样连接字符串

SELECT
    CONCAT(`album`, ' (', COUNT(*), ')') as album
FROM `mp3`
GROUP BY `album`

看看Count()Group By

SELECT DISTINCT CONCAT(album, ' (', COUNT(DISTINCT album), ')') AS album
FROM            mp3
GROUP BY        album

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM