【发布时间】:2022-01-05 00:36:58
【问题描述】:
我正在尝试对 SQLite DB 中的三个表的不同值执行内部连接。我试了很多次都失败了。请指导我。
下面是我想要实现的伪代码
sql = '''
SELECT DISTINCT lesson_id, question_id FROM lesson_practice_questions as lpq
INNER JOIN
SELECT DISTINCT topic_id, lesson_id FROM chapter_lessons as cl
WHERE cl.topic_id==2
ON cl.lesson_id = lpq.lesson_id
INNER JOIN
SELECT DISTINCT question_id, subject_id, question_type_id, knowledge_type_ids complexity_level FROM questions as q
ON q.question_id = lpq.question_id;'''
cur.execute(sql)
非常感谢 @eshirvana 抽出时间提供帮助!
为将来的 stackoverflow 参考提供模糊错误解决方案的完美解决方案:
sql = '''SELECT
lpq.lesson_id, cl.lesson_id,
topic_id,
q.question_id, lpq.question_id,
subject_id,
question_type_id,
knowledge_type_ids,
complexity
FROM lesson_practice_questions as lpq
INNER JOIN chapter_lessons as cl on cl.topic_id = 2 and cl.lesson_id = lpq.lesson_id
INNER JOIN questions as q ON q.question_id = lpq.question_id;'''
【问题讨论】:
-
是sqlite还是mysql?仅 ag 您正在使用的数据库
-
嗨,它是 SQLITE