[問題] 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