gpt4 book ai didi

mysql - sql查询以查找至少具有两种类型帐户的用户

转载 作者:行者123 更新时间:2023-11-29 06:54:46 26 4
gpt4 key购买 nike

我是关系型 SQL 的新手。我正在尝试找出一个查询来返回拥有不止一种类型帐户的客户的姓名。

客户:

+------------+--------------+ 
| cid | Name |
+------------+--------------+
| 1 | Bob |
| 2 | John |
| 3 | Jane |
+------------+--------------+

账户:

+------------+--------------+ 
| aid | type |
+------------+--------------+
| 1 | Checking |
| 2 | Saving |
| 3 | CD |
+------------+--------------+

交易:

+------------+--------------+--------------+ 
| tid | cid | aid |
+------------+--------------+--------------+
| 1 | 1 | 1 |
| 2 | 2 | 1 |
| 3 | 1 | 2 |
| 4 | 2 | 3 |
| 5 | 3 | 1 |
+------------+--------------+--------------+

有了这些表,查询应该返回 Bob 和 John。我在如何编写这样的查询时遇到了一些麻烦。更具体地说,我如何计算一个客户有多少个帐户,如果帐户不同,我如何在不向表中添加新列的情况下进行比较?

最佳答案

好的,这似乎在 SQL Fiddle 中与我的测试数据结构一起工作。用您的真实数据结构尝试一下,看看它是否能满足您的需求。

SELECT name FROM customers c WHERE EXISTS(
SELECT DISTINCT aid FROM transactions
WHERE cid = c.cid
HAVING COUNT(DISTINCT aid)>1
)

关于mysql - sql查询以查找至少具有两种类型帐户的用户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13436234/

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