php - 如何根据列字段的计数选择记录

标签 php mysql sql

我有一个场景,查询将像基于状态 = 1 的选择记录一样工作,并在数据库中找到大量记录。 假设我想选择具有最大状态数 = 1 的艺术家,他们的名字是从其他表中获取的。 另一个问题是我的查询是重复记录。 我的查询:

SELECT order.status, 
       order.artist_id, 
       web_user.uFname, 
       web_user.uLname, 
          web_user.uID 
FROM `order` 
INNER JOIN `web_user` 
ON web_user.uID = order.artist_id 
HAVING order.status = '1'

我得到的记录集:

status artistid uFname   uLaname  uID
1      14       Pitbull  Armando  14
1      14       Pitbull  Armando  14
1      13       Enrique  Iglesias 13
1      15       Robyn    Rihanna  15
1      15       Robyn    Rihanna  15
1      15       Robyn    Rihanna  15

我只是想:

downloadtimes artistid uFname   uLaname      uID
2             14       Pitbull  Armando      14
1             13       Enrique  Iglesias     13
3             15       Robyn    Rihanna      15

请增强我的查询。

最佳答案

您可以使用COUNT()

SELECT 
COUNT(*) AS downloadtimes , 
order.artist_id, 
web_user.uFname, 
web_user.uLname, 
web_user.uID 
FROM `order` 
INNER JOIN `web_user` ON web_user.uID = order.artist_id 
WHERE order.status = '1'
GROUP BY order.artist_id

关于php - 如何根据列字段的计数选择记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22905435/

相关文章:

php - fe_sendauth : no password supplied error in postgresql + laravel

php - 获取上线的所有传销下线 (php)

sql - 从外键引用获取结果

SQL 查询 - 基于数值返回文本

php - 从 PHP 数组生成 HTML 表格

PHP 与 MySQL 的关系

php - 如何查询上周周四到周三?

python - 如何一次循环两个iterables,通过python像这样插入到mysql中?

java - mysql - 一种检查查询是否更新/删除/创建或选择的方法

SQL - 如果表中存在值,如何返回 bool 值