Mysql sql中检索最新日期时间项的复杂性?

Mysql sql中检索最新日期时间项的复杂性?,mysql,sql,Mysql,Sql,我想: select max_date = max( dates) from some_table t 其中日期是以 2014-10-29 23:34:11 和是主键,所以被索引 大型数据库的检索复杂度是多少?由于您的日期列是主键,因此它将是唯一的,并被索引。所以,应该没问题。 根据MySQL文档,如果将WHERE子句与MAX()函数一起使用,则查询将得到优化,速度将更快 在您的情况下,您只是想获得最长日期,您还可以使用OEDER BY和LIMIT如下所示,这样可以利用date

我想:

select 
       max_date = max( dates)
from some_table t
其中日期是以

2014-10-29 23:34:11

和是主键,所以被索引


大型数据库的检索复杂度是多少?

由于您的
日期列是主键,因此它将是唯一的,并被索引。所以,应该没问题。
根据MySQL文档,如果将
WHERE
子句与
MAX()
函数一起使用,则查询将得到优化,速度将更快

在您的情况下,您只是想获得最长日期,您还可以使用
OEDER BY
LIMIT
如下所示,这样可以利用
dates
列上的索引,速度更快

select `dates`
from some_table
order by `dates` desc 
limit 1;

我猜这可能取决于备份索引结构,但根据大多数数据库,索引是在主键上使用的,这会导致检索与存储系统中数据库行偏移量相同的键的时间为O(logn)或O(1)。这似乎是合理的。我对MySQL内部结构的了解太有限,无法确定,因此发表了评论而没有回答。