【问题标题】:SQLITE3 Query COUNT and ORDER BYSQLITE3 查询 COUNT 和 ORDER BY
【发布时间】:2019-03-05 00:58:17
【问题描述】:

我有一个基本表,我需要一些帮助来解析其中的一些数据。

现在我运行两个查询来获取我想要的数据。

查询 1(用于 tally_id 的总数或“数量”)

SELECT
 count(*)
FROM
 tally
WHERE
time >= '2019-02-25 00:00' AND time <= '2019-03-04 21:00';

在上面的这个例子中,我得到的结果是 247

查询 2

SELECT
 tally_id,
 count(*)
FROM
 tally
WHERE
time >= '2019-02-25 00:00' AND time <= '2019-03-04 21:00'
GROUP BY
 tally_id;

这给了我每个'tally_id'的计数总数,例如

Orange Blocks|5
Red Blocks|5
Yellow Blocks|10
Tan Blocks|11
Blue Blocks|12
Purple Blocks|24
Black Blocks|121
Green Blocks|59

有没有办法将两者结合起来,所以这是一个很好的无缝查询操作?我想查看块的总数,如上面的 247 以及每种单独类型的块的总数。

感谢interwebz!

【问题讨论】:

    标签: sql sqlite


    【解决方案1】:

    使用union 组合您的两个查询

    SELECT tally_id,count(*)
    FROM tally
    WHERE time >= '2019-02-25 00:00' AND time <= '2019-03-04 21:00'
    GROUP BY tally_id
    union
    SELECT 'total', count(*)
    FROM tally
    WHERE time >= '2019-02-25 00:00' AND time <= '2019-03-04 21:00'
    

    【讨论】:

    • 完美!这正是我想要的,谢谢!
    • 另一个问题。我将如何设置查询以解析出每天的总计,如上例所示,在 WHERE 时间 >= '2019-02-25 00:00' 和时间
    • 将时间转换为日期,这是选择列表以及@tengoindiamike 分组
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-10-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-19
    相关资源
    最近更新 更多