gpt4 book ai didi

mysql - 根据外键所属行的值对连接表中的结果进行排序

转载 作者:行者123 更新时间:2023-11-29 12:10:31 25 4
gpt4 key购买 nike

我有三个多对多表:作者、作者身份、书籍。我想从作者身份中选择行,并根据该行所属的作者按字母顺序排序。示例:

-- Authors --
ID Name
1 Peter
2 Gregory
3 Daniel

-- Authorships--
ID AuthorId BookId
1 1 1
2 2 1
3 3 1

-- Books--
ID Name
1 Foobook

我想编写一个 select 语句,返回属于特定书籍的作者身份的所有行,然后按作者姓名对结果进行排序。

所以像这样:

SELECT * FROM Authorships WHERE BookId = 1 ORDER BY (Authors.Name???);

除非我需要订购结果。我理解这个问题可能看起来很愚蠢,因为它的解决方法/效率低下,但我正在使用大量遗留代码,并且不允许真正更改任何其他内容。

谢谢。

最佳答案

这会起作用:

SELECT auth.* FROM Authorships auth, Authors au, Books bk WHERE auth.BookId = bk.ID and auth.AuthorId = au.ID ORDER BY au.Name

SQLFiddle 链接: SQLFiddle

关于mysql - 根据外键所属行的值对连接表中的结果进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30781053/

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