首页 > 解决方案 > 通过 DESC 订购的替代方案

问题描述

此 sql 查询获取记录总共需要 9 分钟。

select top 1 checkdate 
from BTHI1
where CUSTOMERID = 'AUTOMO' and recordtype='T'
order by checkdate desc

还有什么其他方法可以减少查询时间吗?

标签: sqlperformancesql-order-bywhere-clause

解决方案


对于此查询:

select top 1 checkdate 
from BTHI1
where CUSTOMERID = 'AUTOMO' and recordtype = 'T'
order by checkdate desc

你想要一个关于BTH1(CUSTOMERID, recordtype, checkdate DESC). 前两列可以按任意顺序排列。

请注意,您也可以将其写为:

select max(checkdate) 
from BTHI1
where CUSTOMERID = 'AUTOMO' and recordtype = 'T';

推荐阅读