优化的SQL查询用户问题

时间:2018-12-08 07:40:12

标签: sql-server

用户有多个问题要回答,它们被保存在tblAnswers中。

tblUsers

ID 名称
1雷
2亚伦
3基兰

tblAnswers

ID 用户ID 问题ID 答案
1 1 1 mno
2 1 2 abc
3 1 3 xyz

我想要以下查询:选择用户名,Ques1答案,Ques2答案,Ques3答案

我没有为上述情况优化SQL查询。任何帮助,不胜感激。谢谢

1 个答案:

答案 0 :(得分:0)

我知道您希望所有结果1,2,3在同一行中,但这非常复杂,您仍然可以轻松阅读,因为使用ORDER BY可以将它们全部在一起。祝你好运!

SELECT UserName, CONCAT(tq.Question, ‘ ‘, ta.Answer) FROM tblUsers tu
INNER JOIN tblAnswers ta on tu.ID = ta.UserID
INNER JOIN tblQuestions tq on tq.ID = ta.QuesID
ORDER BY tu.UserID