gpt4 book ai didi

基于多表计算的SQL

转载 作者:行者123 更新时间:2023-12-02 16:12:35 24 4
gpt4 key购买 nike

我有一个简单的数据库,其中包含以下两个表。

sessions表中的id字段之间存在一对多关系以及候选表中的 session_id 字段。

我想要一个能够SELECT * FROM SESSIONS的查询。

SESSIONS (TABLE)

|| id || title || max_candidates || description ||
|| 01 || fish || 05 || some string ||
|| 02 || birds || 10 || some string ||

CANDIDATES (TABLE)

|| session_id || user_id ||
|| 01 || user01 ||
|| 02 || user12 ||
|| 02 || user03 ||
|| 02 || user05 ||

但是,除了从 session 表中返回信息之外,我还希望它返回一个名为 avaliable_spaces计算列

我想让此列返回特定的可用空间数 session 基于(CANDIDATESsession_id 出现的次数)- (max_candidates)

在上面的示例中,它将返回(显然减去列 headers);

|| id || title || max_candidates || description || avaliable_spaces ||

|| 01 || fish || 05 || some string ||04 ||
|| 02 || birds || 10 || some string ||07 ||

这有道理吗?如果是这样的话,这可能吗? (你可能猜到了)我是一个 SQL 菜鸟,这远远超出了我的能力范围!

最佳答案

SELECT S.id,
S.title,
S.max_candidates,
S.description,
S.max_candidates - COUNT(c.user_id) as available_spaces
FROM SESSIONS S
LEFT OUTER JOIN CANDIDATES C
ON C.session_id = s.id
GROUP BY S.id,
S.title,
S.max_candidates,
S.description

关于基于多表计算的SQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4972212/

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