簡體   English   中英

通過另一個表中的列對表進行排序

[英]Order a table by a column in another table

我查看了有關該問題的其他問題/答案,但是由於某種原因,每次我嘗試完全按照他們的實現方式實施答案時,都會引發錯誤。 但是我現在正在分頁一些內容,並且需要按另一個表中的列對結果進行排序。

這是我現在擁有的代碼:

SELECT `id`,`name`,`players`,`max_players`,`status`,`host`,`port` 
  FROM `servers` 
 LIMIT :to,:from

它從中獲取數據的表是servers表,它需要從server_profiles表中獲取列的rank ,並以此對其進行rank 我試圖了解MySQL聯接是如何工作的,但是從查看示例到閱讀MySQL Wiki上的標記,它們總是使我感到困惑。

您可以使用join。 為此,您需要在兩個表之間建立關系。 例如,我使用過server.ID = server_profiles.serversID

SELECT s.* FROM servers s
  JOIN server_profiles sp
    ON s.ID = sp.serversID
 ORDER BY sp.rank
 LIMIT :to,:from

看到這個SQLFiddle

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM