gpt4 book ai didi

mysql - 计算两个表中行 id 不匹配的 (*) 行。

转载 作者:行者123 更新时间:2023-11-29 07:59:26 25 4
gpt4 key购买 nike

为此感到头疼:

我需要计算(*)从现在到 1 天前两个表中的行数,其中表一中的historyId!=表二中的historyId并且userId=?。然后我需要返回两个表的所有行的总和。

如果表一中的historyId与表二中的historyId相等,则只需将其计为一行,而不是两行。

查询一

    SELECT HOUR(date) as hr, historyId, COUNT(*) as num_rows 
FROM webHistory WHERE userId=? AND date BETWEEN (SYSDATE() - INTERVAL 1 DAY)
AND SYSDATE() GROUP BY HOUR(date);

查询二

    SELECT HOUR(date) as hr, historyId, COUNT(*) as num_rows 
FROM locationHistory WHERE userId=? AND date BETWEEN (SYSDATE() - INTERVAL 1 DAY)
AND SYSDATE() GROUP BY HOUR(date);

我一直在考虑加入,但我完全陷入困境,不知道下一步要搜索什么,更不用说冒险和测试的路线了。

最佳答案

我认为您想为此使用union:

select count(distinct historyid)
from (select hour(date) as hr, historyid
from webhistory
where userid = ? and date between sysdate() - interval 1 day and sysdate()
union all
select hour(date) as hr, historyid
from locationhistory
where userid = ? and date between sysdate() - interval 1 day and sysdate()
) t
group by hr;

关于mysql - 计算两个表中行 id 不匹配的 (*) 行。,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24271428/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com