gpt4 book ai didi

mysql - 连接多个外键值

转载 作者:行者123 更新时间:2023-11-29 11:01:29 24 4
gpt4 key购买 nike

如何使用外键中的多个值从其他表中获取记录。例如我以前是一名新生的主题的故事ID。我正在从主题表中获取主题名称。但现在我正在集成多个科目的功能,这意味着学生中的 ID 列看起来像:120, 140(这意味着两个科目)现在我如何从另一个表中获取科目名称(例如,我希望它显示英语) ,数学在我加入他们的专栏中)。

这是我当前的查询:

SELECT t.*
FROM
(SELECT ROWNUM AS rn,
t.*
FROM
(SELECT t.*,
s.subject_name
FROM STUDENT t
LEFT JOIN SUBJECTS s ON t.subject_id=s.subject_id) t) t
WHERE rn BETWEEN ? AND ?

最佳答案

现在学生和书籍之间已经有了多对多的关系。并且您必须更改数据库结构才能获得最佳实践。

解释here

让我在这里简单地解释一下。

在这种情况下,会制定第三个表,通常称为连接表。两个表的所有 id 实际上都是该表的行。

示例。

您可以通过以下方式实现它。

 student: student_id, first_name, last_name
books: book_id, book_name, book_author_etc
student_books: book_id, student_id # the junction table

示例查询:

 // To get all the books for a student. 

SELECT b.book_id, name
FROM student_books sb
INNER JOIN books b ON b.book_id = sb.book_id
WHERE sc.student_id = Y

关于mysql - 连接多个外键值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42153975/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com