簡體   English   中英

如何對SELECT進行MySQL SELECT和按列排序並按其他表中的另一個鍵排序

[英]How to MySQL SELECT and order by a column and sort by another key in a different table

我正在構建一個非常簡單的Web應用程序,以使用cURL調用檢查網站是否可用(返回http 200代碼)。 我需要獲取要檢查的域,該域當前具有SELECT *。 有人告訴我它需要按domain_key(last_checked)排序,並帶有一個帶有時間戳的相應domain_key。 這樣,我們可以檢查具有最舊的last_checked值的域。 第一個表包含以下列:

ID | CREATED | DOMAIN | accountID | server | status

然后,我有一個詳細信息表:

ID | domainID | domain_key | domain_value

我還被告知要通過服務器處理請求? 所以我的問題是:

如何按服務器訂購或分組域? 是否可以在一個查詢中執行此操作,或者我需要為特定服務器上的每組域使用單獨的SELECT語句?

選擇域服務器(從詳細信息中選擇max(convert(domain_value,datetime),其中domainID = domains.id和domain_key ='last_checked')作為從域中按域,服務器分組的last_checked;

這符合您的目的嗎?

select domain, server, 
(select max(convert(domain_value, datetime)) from details 
where domainID = domains.id and domain_key = 'last_checked') as last_checked 
from domains order by server, last_checked desc

暫無
暫無

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

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