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内部结构的了解太有限,无法确定,因此发表了评论而没有回答。