mysql - SQL按分组计算行数

标签 mysql sql

<分区>

我有一张 table :

A       B
 ---------
1       Date1
1       Date1
1       Date1
1       Date2
2       Date1
3       Date3
4       Date2
4       Date1
1       Date3

SELECT A, count(A) FROM `table` WHERE B BETWEEN 'Date1' AND 'Date2'
GROUP BY A
ORDER BY A

当我做普通查询时:

A       B
----------
1        1
1        1
1        1
2        1
3        1
4        1
4        1

需要计算天数吗?对此有任何简单的查询吗?请帮忙

需要这样的数据:

A       B
----------
1        3
2        1
3        1
4        2

最佳答案

看来你需要 count(distinct B)

SELECT A, count(distinct B) 
FROM `table` WHERE B BETWEEN 'Date1' AND 'Date2'
GROUP BY A 
ORDER BY A;

关于mysql - SQL按分组计算行数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34994290/

相关文章:

mysql - SQL 进行简单的相关性排名

php - 选择从字段 3 到字段 4 的唯一行

php - Zend Framework 2如何使用连接从多个表中获取列?

mysql2 gem 安装错误

javascript - 从 mysql 到 javascript 变量

php - 使用 JSON 更新记录时 MySQL 语法错误

mysql - 如何处理 ember.js 中的对象 ID?

mysql - SQL 查询以找出订单记录

sql - 如何在 where 子句中使用 NVL

SQL查询获取表中的单词数