[问题] hw3 Q15

楼主: rock1246 (Rokya)   2012-10-26 00:26:53
SELECT P.Name
FROM Planets P
WHERE (
SELECT COUNT(*)
FROM
(
SELECT DISTINCT T.`Character's Name`
FROM TimeTable T
WHERE P.Name=T.`Planet's Name`
)
) > 3
我想要找出 在TimeTable中,被超过三个不同角色逛的星球
但是拿去执行后
会出现叫我输入P.Name的视窗@@
完全不知道是怎么回事
请问有没有人有头绪? 谢谢!
作者: nick0702 (言)   2012-10-26 03:07:00
有问题的地方是在 WHERE P.Name=T.`Planet's Name`里面的 P.Name 无法知道 P 是什么东西
作者: k1923456 (龙泉之心)   2012-10-26 12:00:00
感觉第二层的FROM要多写一个Planets P然后第二层的SELECT没有WHERE...我觉得怪怪的耶...
楼主: rock1246 (Rokya)   2012-10-26 22:51:00
可是下一层不是应该知道上一层的命名 P @@?
作者: nick0702 (言)   2012-10-26 23:43:00
应该颠倒过来 它是由内往外的
作者: jcaosola (纸袋)   2012-10-27 00:19:00
spec里 QUERY commands没有COUNT是不是代表不准用?啊 看到下一篇了
作者: seanlatias (小赖)   2012-10-28 12:53:00
不能用count(dsitinct)真的很不方便...所以这个有解吗??
作者: nick0702 (言)   2012-10-28 20:19:00
可以试试看 GROUP BY 然后 HAVING COUNT

Links booklink

Contact Us: admin [ a t ] ucptt.com