排序通过3个表MYSQL

Posted

技术标签:

【中文标题】排序通过3个表MYSQL【英文标题】:Sorting through 3 tables MYSQL 【发布时间】:2019-03-22 18:50:41 【问题描述】:

您好,我正在尝试对这 3 个 Tables 进行排序

我需要创建一个通过“作者”表的查询,

获取作者编号

然后去'Wrote'表从最后一个表的AuthorNum中找到'BookCode'

然后最后通过 Book 表列出书名和作者的名字和姓氏。

我正在考虑使用连接表,但我不太了解它的工作原理。嵌套选择语句是我的下一个猜测,但我无法让它们通过这么多表。

如果有人可以帮助我,那就太好了,谢谢。

【问题讨论】:

请编辑您的问题以将表格信息包含为文本,而不是图像。你使用JOINs 是正确的。 【参考方案1】:

请尝试使用这个: (我将第一个表名命名为 first) 选择 a.Title 作为标题,w.AuthorFirst 作为名字,w.AuthorLast 作为姓氏 从写为 w 内部加入作者作为 内连接首先作为 f On (Select ww.AuthorNum From WroteTable as ww Order By DESC LIMIT 1) = f.AuthorNum 在 f.BookCode = a.BookCode

【讨论】:

【参考方案2】:

你想用INNER JOINS来匹配数据

SELECT *
FROM authors AS a
INNER JOIN wrote AS w
  ON a.AuthorNum = w.AuthorNum
INNER JOIN book AS b
  ON w.BookCode = b.BookCode

【讨论】:

以上是关于排序通过3个表MYSQL的主要内容,如果未能解决你的问题,请参考以下文章

在每个表,mysql,经典asp中按相同字段排序2个表

mysql中3个表的内连接

从第二个表存储过程mysql中仅通过其ID选择一个图像

LEFT JOIN 两个 MySql 表,而第二个表按 desc 排序并限制为 1

mssql 判断 排序

mysql 通过查询从 order by 中选择平均值