gpt4 book ai didi

mysql - 自定义 MySql 查询

转载 作者:行者123 更新时间:2023-11-29 07:23:17 27 4
gpt4 key购买 nike

抱歉,标题,我找不到我的问题的简短名称或描述。

Table_A:每一行都是一个用户请求(id,...,status)

Table_B:Table_A 中的每个请求可以在 Table_B 中包含 1 行或多行作为请求的子部分(id、request_id、....、status)

我的系统使用 cron 处理 Table_B 中的行,同时运行多个 cron。 cron 完成后将 Table_B 中的状态设置为 3(完成)。

现在我需要知道每个请求(Table_A)的所有子部分(Table_B 行)何时完成,以便我可以更新 Table_A 中的状态。

我现在正在做的是选择 Table_A 中的第一个请求(TOP 1),然后获取 Table_B 中所有子部分的状态并检查它们是否全部具有状态==3,这有效,但我希望能够只需单个查询即可完成此操作,无需检查代码中的值。

类似这样的事情:

select the request_id's 
from Table_B where **all the rows** with this request_id has status=3

有什么想法吗?任何帮助表示赞赏。

最佳答案

试试这个:

SELECT request_id
FROM Table_B
GROUP BY request_id
HAVING COUNT(CASE WHEN status <> 3 THEN 1 END) = 0

这将选择status = 3相关的request_id值。

注意:我假设status是一个NOT NULL字段。

关于mysql - 自定义 MySql 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35342912/

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