對於多對多,我有三個表:作者,作者,書籍。我想從authorhip中選擇行,並根據此行所屬的作者按字母順序排序。 例子:根據聯結表的結果排序其外鍵所屬的行的結果
-- 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???);
除了我需要訂購的結果。 我明白這個問題可能看起來很愚蠢,因爲它的解決方法/效率低下,但我正在處理大量遺留代碼,並且不允許真正改變其他任何東西。
謝謝。
你必須'JOIN'用'Authors'表得到'Name'。然後你可以在'ORDER BY'子句中加入'Name'。 –