2013-12-11 61 views
0
SELECT ord.*,usr.*,ship.* FROM order_list ord 
CASE 
WHEN shiptype = 'prof' 
THEN (INNER JOIN user_list usr 
     ON ord.userid = usr.id 
     INNER JOIN user_list ship 
     ON order.userid = ship.id) 
WHEN shiptype = 'brief' 
THEN (INNER JOIN user_list usr 
     ON ord.userid = usr.id 
     INNER JOIN tbl_brf_shipping ship 
     ON order.userid = ship.id) 
WHEN shiptype = 'joan' 
THEN (INNER JOIN joan_user_list usr 
     ON ord.userid = usr.id 
     INNER JOIN joan_user_list ship 
     ON order.userid = ship.id) 
END 
WHERE complete = '1' 

它不工作...........使用內連接與使用MySQL中的case語句選擇

+0

給出表格bro的唯一名稱,試着用ship1,ship2來代替,希望這有助於 –

+0

請用幾句話解釋你想要做什麼?這個查詢的語法是完全不正確的,請研究這個鏈接:http://dev.mysql.com/doc/refman/5.6/en/select.html,SQL中不存在像'conditional join to different tables'這樣的東西, ,'FROM tablename'後面不允許使用'CASE'關鍵字,只允許在表達式中使用'CASE'關鍵字。 – krokodilko

回答