[英]How to get data from database using join 5 tables
樣本數據
job_category
**catergory_id** **category_name**
3 Tourism and Travel Services
job
**job_id** **role** **category_id**
1 Financial Accountant 3
exam_paper
**exam_paper_id** **exam_paper_name** **job_id**
1 FA -TTS 1
question
**question_id question option1 option2 option3 option4**
15 AAA a1 a2 a3 a4
38 BBB b1 b2 b3 b4
39 CCC c1 c2 c3 c4
44 DDD d1 d2 d3 d4
45 EEE e1 e2 e3 e4
exam_question_list
**id** **exam_paper_id** **category_id** **job_id** **q1 q2 q3 q4 q5**
1 1 3 1 15 38 39 44 45
我想從exam_question_list表中獲取詳細信息,預期結果是問題,問題表中的選項根據question_paper_list表'q1-q5'
我試圖獲取數據,但它不起作用;
SELECT *
FROM exam_question_list eq
LEFT JOIN exam_paper ex
ON eq.exam_paper_id = ex.exam_paper_id
LEFT JOIN job j
ON j.job_id = ex.job_id
LEFT JOIN job_catergory jc
ON jc.catergory_id = j.catergory_id
LEFT JOIN question q
ON q.question_id=eq.q1
這個查詢只給出了問題1.我想得到所有5個問題。怎么做?
您的查詢錯誤。 正確的是
SELECT eq.*
FROM exam_question_list eq
LEFT JOIN exam_paper ex ON eq.exam_paper_id = ex.exam_paper_id
LEFT JOIN job j ON j.job_id = ex.job_id
LEFT JOIN job_catergory jc ON jc.catergory_id = j.catergory_id
LEFT JOIN question q ON q.question_id=eq.q1
您需要有問題的外鍵,因為相關數據在那里,並且您開始選擇所有加入后的問題,你把它放在哪里= id_whherever_you_want
exam_question_list與任何事情無關聯嘗試制作一個關系數據模型,這有助於您了解數據庫中需要更改的內容。 刪除exam_question_list並將所有外鍵置於問題狀態
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.