【发布时间】:2015-03-21 05:23:14
【问题描述】:
我正在关注 Zed Shaw 的 learnSQLthehardway,我想弄清楚如何从拥有多个宠物的桌子人中选择名字(宠物表中的宠物信息。)
person_pet Table:
person_id pet_id
0 0
0 1
1 1
1 2
2 3
person Table:
id name
0 Zed
1 Orange
2 Limen
pet Table:
id name
0 Jag
1 Black
2 Fluffy
3 Mister
我一直在尝试使用 COUNT 函数,但似乎无法获得正确的结果。我必须根据这些数据返回 Zed 和 Orange。
SELECT name FROM person, person_pet WHERE id =
(SELECT person_id FROM person_pet GROUP BY person_id HAVING COUNT(person_id) > 1);
这只是返回 Zed 而不是我的名字。如何?那有什么办法可以解决问题呢?
任何帮助都会很棒,谢谢!
【问题讨论】:
-
我可以看到这个查询有很多问题,从错误“子查询返回多行”开始。但是,我看不出它只会返回“Zed”而不是其他任何东西。