gpt4 book ai didi

mysql - 计算一个表中的记录,其中链接表中没有符合特定条件的记录

转载 作者:行者123 更新时间:2023-11-29 01:15:49 25 4
gpt4 key购买 nike

我有 2 个表:

T1:

  id   | name
------ | ------
1 | Bob
2 | John
3 | Joe

T2:

  id   | T1_id  |  type
------ | ------ | ------
1 | 1 | call
2 | 1 | email
3 | 1 | fax
4 | 2 | call
5 | 2 | email
6 | 2 | fax
7 | 3 | call
8 | 3 | email

我想计算 T1 中没有在 T2 中类型为“传真”的记录的数量。

所以在这种情况下答案是1 (3|Joe)

目前我有:

SELECT count(*)
FROM `T1`
JOIN `T2` on `T1`.`id` = `T2`.`T1_id`
WHERE `T2`.`type` != 'fax'

但这显然是在计算所有不是“传真”的记录。我只是无法理解我脑子里的逻辑。

如有任何帮助,我们将不胜感激!

最佳答案

不需要子查询:

SELECT COUNT(DISTINCT t1.id) 
FROM t1
LEFT
JOIN t2
ON t2.t1_id = t1.id
AND t2.type = 'fax'
WHERE t2.id IS NULL;

关于mysql - 计算一个表中的记录,其中链接表中没有符合特定条件的记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45405901/

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