Php 如何使用join 5表从数据库获取数据
样本数据Php 如何使用join 5表从数据库获取数据,php,mysql,join,Php,Mysql,Join,样本数据 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_
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
我想从考试问题列表表中获取详细信息,预期结果是问题,根据问题列表表“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
你的问题是错误的。正确的是
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
您需要有问题的外键,因为相关数据在那里 然后你开始用问题来选择,然后加入你把where=id\u放在你想要的地方 考试问题列表与任何内容都没有关联。试着创建一个关系数据模型,这有助于您了解数据库中需要更改的内容。
删除考试问题列表并将所有外键放在问题上您需要有问题的外键,因为相关数据在那里 然后你开始用问题来选择,然后加入你把where=id\u放在你想要的地方 考试问题列表与任何内容都没有关联。试着创建一个关系数据模型,这有助于您了解数据库中需要更改的内容。
删除考试问题列表并将所有外键放在问题上请正确地提及表名。我的猜测是根本没有错,只有一条记录在四次联接后仍然存在。用适当的数据更新你的问题,有人可以仔细查看。如何获得所有5个问题,我只得到1个问题**q1 q2 q3 q4 q5**是不同的行,对吗?不同列的“考试问题列表”请正确地提及表名。我的猜测是,没有什么错,只有一条记录在四个连接中幸存。用适当的数据更新你的问题,有人可以仔细查看。如何获得所有5个问题,我只得到1个问题**q1 q2 q3 q4 q5**是不同的行,对吗?“考试问题列表”的不同列