SQL / SQLite 根据日期计算文本出现次数的查询
SQL / SQLite Query that counts the number of text occurrences based on date
下面是我尝试执行的查询示例。输入是我有权访问的 table。输出是我想要组织数据的方式。我正在尝试按日期对数据进行分组,并输出上升次数和下降次数,因此输出将给出一个字符串,整数,整数。
这个查询比我以前做过的稍微高级一点,但我想我需要类似这样的东西:
SELECT date, COUNT(*), COUNT(*) FROM Input GROUP BY date
我不确定如何设置 COUNT 的格式以仅查找特定日期的 UP 或 DOWN。有人能帮我指出正确的方向吗
输入
date
time
status
2022-01-01
12:12:12
UP
2022-01-01
13:12:12
DOWN
2022-01-01
14:12:12
UP
2022-02-04
12:12:12
UP
2022-02-04
13:12:12
DOWN
2022-02-04
14:12:12
DOWN
2022-03-05
12:12:12
UP
2022-03-05
13:12:12
UP
2022-03-05
14:12:12
DOWN
输出
date
# of UP
# of DOWN
2022-01-01
2
1
2022-02-04
1
2
2022-03-05
2
1
您可以尝试 sum
使用条件 case 表达式
select date,
Sum(case when status='Up' then 1 else 0 end) NumUps,
Sum(case when status='Down' then 1 else 0 end) NumDowns
from t
group by date;
下面是我尝试执行的查询示例。输入是我有权访问的 table。输出是我想要组织数据的方式。我正在尝试按日期对数据进行分组,并输出上升次数和下降次数,因此输出将给出一个字符串,整数,整数。
这个查询比我以前做过的稍微高级一点,但我想我需要类似这样的东西:
SELECT date, COUNT(*), COUNT(*) FROM Input GROUP BY date
我不确定如何设置 COUNT 的格式以仅查找特定日期的 UP 或 DOWN。有人能帮我指出正确的方向吗
输入
date | time | status |
---|---|---|
2022-01-01 | 12:12:12 | UP |
2022-01-01 | 13:12:12 | DOWN |
2022-01-01 | 14:12:12 | UP |
2022-02-04 | 12:12:12 | UP |
2022-02-04 | 13:12:12 | DOWN |
2022-02-04 | 14:12:12 | DOWN |
2022-03-05 | 12:12:12 | UP |
2022-03-05 | 13:12:12 | UP |
2022-03-05 | 14:12:12 | DOWN |
输出
date | # of UP | # of DOWN |
---|---|---|
2022-01-01 | 2 | 1 |
2022-02-04 | 1 | 2 |
2022-03-05 | 2 | 1 |
您可以尝试 sum
使用条件 case 表达式
select date,
Sum(case when status='Up' then 1 else 0 end) NumUps,
Sum(case when status='Down' then 1 else 0 end) NumDowns
from t
group by date;