[英]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.