Mysql 表的简单查询
我有一个名为“住户”的表格,其中包含了居住在不同公寓楼的住户的信息。这就是从该表中选择所有值的方式-Mysql 表的简单查询,mysql,sql,join,unique,where,Mysql,Sql,Join,Unique,Where,我有一个名为“住户”的表格,其中包含了居住在不同公寓楼的住户的信息。这就是从该表中选择所有值的方式- SELECT * FROM RESIDENTS; aptid | aptnum | ssn ---------+-----------------+---------------- 100 | 1 | 641072301 100 | 2 | 699
SELECT * FROM RESIDENTS;
aptid | aptnum | ssn
---------+-----------------+----------------
100 | 1 | 641072301
100 | 2 | 699021306
100 | 3 | 699021306
100 | 1 | 699021306
200 | 1 | 132429609
200 | 1 | 641072301
300 | 1 | 641072301
我想选择所有在不同综合楼租出三套以上公寓的居民的社会保险号码。例如,ssn为“641072301”的住户将出现在查询中,因为此人在综合体ID为100、200、300中租出至少三个单元,而社会身份为“699021306”的住户将不会出现,因为即使他们租出三个不同的公寓,他们都在同一单元内(aptID)。因此,本案的结果是—
ssn
---------+
641072301
(1 row)
这是我所拥有的,但这不是给我想要的-
SELECT r1.ssn
FROM Residents r1
, Residents r2
WHERE r1.aptID <> r2.apt.ID;
选择r1.ssn
来自居民r1
,居民r2
其中r1.apid r2.apt.ID;
试试这个:
SELECT ssn
FROM Residents
GROUP BY ssn
HAVING COUNT(DISTINCT aptid) >= 3
请看@草莓,我确实认为SO提供了足够多的信息来提供帮助,你不这样认为吗?@Stephen如果我这样认为,我真的不会发表评论。@草莓,那么也许可以在这篇文章上添加可以改进的内容?样本数据检查!,所需输出检查!,尝试检查@尽管如此,这篇文章还是不值得投反对票。要求很明确。。。但我会让你去做的。上帝啊,这太完美了!你能帮我解决一个类似的问题吗-