我有兩個表對於這個複雜的MySQL查詢
1.fw_respondent_answers
2.fw_question_options
結構更好的選擇是:
fw_respondent_answers
id invitationid qdetailid optionid
1 2 1 1
2 2 2 2
3 2 3 3
4 3 1 4
5 3 2 5
6 3 3 6
fw_question_options:
id optionname qdetailid
1 india 1
2 teacher 2
3 ok 3
4 france 1
5 assistane 2
6 good 3
所需的輸出:
invitationid country profession answer
2 india teacher ok
3 france assistant good
說明:我想有對應於qdetailid
和optionid
特定invitationid
相關的optionname
。 optionid
是fw_question_options
(id)的主鍵。
我曾嘗試:
SELECT distinct fra.`invitationid` ,fo.optionname as country,
fo1.optionname as profession,fo2.optionname as nps
FROM `fw_respondent_answers` fra,fw_question_options fo,
`fw_respondent_answers` fra1,fw_question_options fo1,
`fw_respondent_answers` fra2,fw_question_options fo2
WHERE fra.`optionid`=fo.id and fra.`qdetailid`=2
and fra1.`optionid`=fo1.id and fra1.`qdetailid`=1
and fra2.`optionid`=fo2.id and fra2.`qdetailid`=3
問題:我上面的查詢非常slow.i只是想知道有沒有其他更好的上述查詢方法嗎?
在此先感謝。
轉換爲正確連接。自從'JOIN'被添加到sql標準已經過去了20年。來吧...得到與程序 – Bohemian