我有两个表格问题和标签,每个问题与许多标签相关联 我想使用查询来获取问题和相关标签。 我没有得到如何获取它。
questions
qid ques
Q1 abc
Q2 rst
tags
id tag qid
T1 css 1
T2 html 1
T3 java 1
T4 php 2
T5 c++ 2
T6 html 2
我希望结果为
Q1 abc T1 css 1
T2 html 1
T3 java 1
q1 abc不应该用标签重复
答案 0 :(得分:2)
如果您质疑至少有一个代码使用INNER JOIN
。
SELECT a.*, b.*
FROM Question a
INNER JOIN tags b
ON a.qid = b.qid
-- WHERE a.qid = 1
ORDER BY a.qid, b.id
但是如果代码是可选的,并且您仍希望问题显示在结果列表中,请使用LEFT JOIN
SELECT a.*, b.*
FROM Question a
LEFT JOIN tags b
ON a.qid = b.qid
-- WHERE a.qid = 1
ORDER BY a.qid, b.id
答案 1 :(得分:2)
使用此:
SELECT q.qid,q.ques,t.id, t.tag,t.qid FROM questions AS q JOIN tags AS t WHERE q.qid = t.qid
答案 2 :(得分:0)
SELECT ques,tag FROM quesions t1,tags t2 ON t1.qid = t2.qid