一尘不染

MySQL LIMIT是在ORDER BY之前还是之后应用的?

sql

MySQL处理查询时,哪一个先出现?

一个例子:

SELECT pageRegions
FROM pageRegions WHERE(pageID=?) AND(published=true) AND (publishedOn<=?)
ORDER BY publishedON DESC
LIMIT 1';

即使记录与修订日期时间不匹配(如果在ORDER BY之后应用了LIMIT),那将返回最后发布的pageRegion吗?


阅读 436

收藏
2021-03-17

共1个答案

一尘不染

是的,是在ORDER
BY之后。对于您的查询,您将获得具有最高PublishedOn的记录,因为您正在排序DESC,因此在结果集中首先获得最大值,然后从中选择第一个。

2021-03-17