主題: SQL 的問題
瀏覽單個文章
dabochi
*停權中*
 
dabochi的大頭照
 

加入日期: Nov 2002
您的住址: 東湖
文章: 1,688
引用:
作者s0510510
(恕刪)
SELECT S_name
FROM Student,Take
WHERE Take.S# = = Student.S#
GROUP BY Student.S#
HAVING COUNT(*)>5


這個是考試用的解法 在SQL底下稱為Cross Join 對DB Server而言 這是一個很傷效能的做法可以不用就不用 可以的話 在下會建議閣下考完試最好就忘了他(另外 Cross Join跟在下上面回覆的SQL Injection是SQL初心者常常會沒處理好的問題 要當心)

如果真的因為正規化沒做好 得要用這麼複雜的敘述句 建議是仿student先進的回覆 用Inner Query來達成

引用:
作者student
select S_name from student where s# in (select s# distinct from Take group by s# having count(s#) > 4)
舊 2008-05-18, 05:01 PM #28
回應時引用此文章
dabochi離線中