2017-10-16 46 views
1

我正在開發一個投票系統,我根據每個職位的每票投票限額選擇可用倉位的問題。仍然可用的SELECT倉位

tblposition

pos_no  pos_name limit 
1   pres  1 
2   vpres  2 
3   senator  5 

tblcandidates

cand_no  cand_name cand_pos 
1   john   pres 
2   kim   vpres 
因此

PRES - 0左

vpres - 1左

參議員 - 5離開

期望職位是輸出:

pos_name 
| vpres | 
| senator | 

,但我用這個語句

SELECT pos_name FROM tblposition 
WHERE limit > (SELECT COUNT(cand_pos) 
       FROM tblcandidates, tblposition 
       WHERE tblcandidates.cand_pos = tblposition.pos_name) 
得到錯誤的輸出

任何人可以幫助我解決我的發言產生正確的輸出

回答

0

我只是一個完全不同的方法來解決這個問題:

SELECT 
* 

FROM 
tblposition a 

WHERE 
a.limit > (SELECT COUNT(*) FROM tblcandidates x WHERE x.cand_pos = a.pos_name) 

這現在應該工作,如果你旋轉它!

隨意問你是否有任何問題。

+0

感謝它的工作! – iCeStar