Iva*_*hko 0 mysql performance sql-order-by
我有一个非常简单的表,大约有1 000 000行,我想从中检索一些汇总统计数据.它不是分析请求,而是用户数据.我可以使用3个单独的查询来检索数据,每个查询都将使用特定的where子句.但它将是我的数据库服务器的三个查询.而且我也可以使用条件ORDER BY子句进行一次查询.但我之前从未在生产中使用此类查询.我应该期待一些麻烦吗?
CREATE TABLE t1 (id INTEGER, fk_1 INTEGER, field_1 INTEGER, field_2 DATETIME);
... INSERT INTO t1 ... # 1 000 000 times
SELECT COUNT(*) FROM t1
WHERE fk_1 = <some_value>
GROUP BY CASE WHEN (field_1 = 1) THEN 1 ELSE (CASE WHEN field_2 > NOW() THEN 0 ELSE -1 END) END;
Run Code Online (Sandbox Code Playgroud)
尝试使用IDin计数:
SELECT COUNT(ID) FROM t1
WHERE fk_1 = <some_value>
GROUP BY CASE WHEN (field_1 = 1) THEN 1 ELSE (CASE WHEN field_2 > NOW() THEN 0 ELSE -1 END) END;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1977 次 |
| 最近记录: |