繁体   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