看板 Database 關於我們 聯絡資訊
※ 引述《thanksgive (乾溫)》之銘言: : 有四張關聯分別為, : S(S#,SANME) : P(P#,PNAME) : J(J#,JNAME) : SPJ(S#,P#,J#,QTY) : 題目要找出: 供應零件代號P2最多的供應商名字? : 解答很明顯寫錯了, : 可是正確的我也想不出來 :( : 以下是我自己寫的,這樣對嗎? : 感覺寫得好冗長,也不知道對不對... : 為節省空間+使容易了解下面的這段會替換最下面的查詢 : _____________________________________ : [select S.S# as sno, S.SNAME as name, SUM(SPJ.QTY) as T : from S, SPJ : where S.S#=SPJ.S# and : SPJ.p#='p2' : group by S.S#, S.SNAME] as TAB* : ______________________________________ : select name : from TAB1 : where T = : (select MAX(T) : from TAB2 : ) : 請大家替我解惑 : 謝謝 :)) 這問題似乎逃不掉子查詢(subquery) 因為他問全部之中最大的那個人的欄位是什麼的這類問題 SELECT S.[SNAME] FROM S INNER JOIN SPJ ON S.[S#]=SPJ.[S#] //自然合併 WHERE SPJ.[P#] = 'P2' GROUP BY S.[S#], S.[SNAME] HAVING SUM(SPJ.QTY) >= ALL ( SELECT SUM(SS.[QTY]) FROM SPJ SS WHERE SS.[P#] = 'P2' GROUP BY SS.[S#] ) ; 我也不太清楚...有待高手提出更好的辦法... -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.37.85.250