Re: [SQL ] 不知道有沒有這種寫法...

看板Database作者 (Alien)時間16年前 (2007/12/12 20:23), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串4/4 (看更多)
※ 引述《LPH66 (IWH68S0XZ8M89)》之銘言: : ※ 引述《sui623 (超尷尬...)》之銘言: : : 請問這個要怎麼改才會文法正確..還是有什麼變通的辦法.. : : SELECT A1.`id`,A1.`name`,A2.`chinese_name` ,A1.`jobs_type` ,A2.`email` , : : A1.`cellphone` FROM `address_book` A1,`phd_student` A2 `( OR : : `ncu_ms_student` A2 OR `ncu_phd_student` A2 OR `ms_student` A2 ) WHERE : : A1.`id`=A2.`num` : SELECT ... FROM `adderss_book` A1, : ( : SELECT * FROM `phd_student` : UNION ALL : SELECT * FROM `ncu_ms_student` : UNION ALL : SELECT * FROM `ncu_phd_student` : UNION ALL : SELECT * FROM `ms_student` : ) A2 : WHERE ... : 我猜你是要A2在這四個表中去找 : 所以用個子查詢把四個表一次抓回來 令為A2 建議四個分開 join 再做 union all 現在把所有東西都拿出來才 join, 一來 subquery 的 result 很大, 二來 subquery 該 用不到 index 所以這樣做應該會比較好: select ... from address_book a1, phd_student where balbalbal union all select ... from address_book a1, ncu_ms_student where balbalblaba union all ........ Alien -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 202.155.236.82
文章代碼(AID): #17NzBSSm (Database)
文章代碼(AID): #17NzBSSm (Database)