sql - SQL查询从两个表中获取MCQ问题和答案的数据
解决方案
我假设您使用 MSSQL 作为数据库
采用JOINS
SELECT Q.ID, Q.Que Quetion, A.Choice Options, Op.Choice AS Answer
FROM Table1 Q JOIN Table2 A ON Q.Id= A.Id
LEFT JOIN Table2 Op ON Q.ID = Op.Id AND Q.Ans_Id = Op.Choice_Id
或者
SELECT Q.ID, Q.Que Quetion, A.Choice Options, Op.Choice AS Answer
FROM Table1 Q JOIN Table2 A ON Q.Id= A.Id
LEFT JOIN Table2 Op ON Q.ID = Op.Id AND Q.Ans_Id = Op.Choice_Id
AND Op.Choice_Id = A.Choice_Id
输出
ID Quetion Options Answer
1 Sample Question #1 (a) sasas (a) sasas
1 Sample Question #1 (b) saewew (a) sasas
1 Sample Question #1 (c) 4234 (a) sasas
2 Sample Question #2 (a) xxxxx (c) sd4234
2 Sample Question #2 (b) 5855sz (c) sd4234
2 Sample Question #2 (c) sd4234 (c) sd4234
3 Sample Question #3 (a) bbbbbb (b) saew34
3 Sample Question #3 (b) saew34 (b) saew34
3 Sample Question #3 (c) 42d34 (b) saew34
推荐阅读
- sql - 在 CHANGE DATA CAPTURE (CDC) 中如何捕获时间戳
- ruby-on-rails - .profile 文件,用于设置条带的 ENV 变量
- python - 从 Jinja2 模板获取变量
- c# - `1 在堆栈跟踪中的意义
- php - 通过忽略括号匹配模式
- python - 在 Python 中扩展 @property.setter 装饰器
- typescript - ionic cordova build android 任务执行失败:app:compileDebugJavaWithJavacC
- r - 循环遍历 mutate 内部的迭代
- c# - TableLayoutPanel 循环(C# 表单)
- python - Pygame 模块已安装,但 VsCode 和 Eclipse 无法识别它