小编典典

结合2个MySQL查询

sql

我有这个查询

SELECT COUNT(*) from `login_log` where from_unixtime(`date`) >= DATE_SUB(NOW(), INTERVAL 1 WEEK);

和同一个1差异。不是 1周 ,而是 1个月 ,我该如何合并这两个并将它们分配给别名?


阅读 164

收藏
2021-04-14

共1个答案

小编典典

我将使用条件聚合来做到这一点:

SELECT SUM(from_unixtime(`date`) >= DATE_SUB(NOW(), INTERVAL 1 WEEK)),
       SUM(from_unixtime(`date`) >= DATE_SUB(NOW(), INTERVAL 1 MONTH))
FROM `login_log`;

MySQL将布尔值视为整数,1即为“ true”和0
false”。因此,使用sum()可以计算匹配值的数量。(在其他数据库中,您将使用进行类似的操作case。)

2021-04-14