我问是因为这是我最近才发现的一个较旧的功能。该文档多次提到 DateTime,但没有明确说明其他日期类型是否兼容。
我有一个我相信可以从中受益的数据仓库,但 90% 的重要日期是日期类型,而不是日期时间。我使用的是 SQL 2014,但任何版本的信息都会有所帮助。
我问是因为这是我最近才发现的一个较旧的功能。该文档多次提到 DateTime,但没有明确说明其他日期类型是否兼容。
我有一个我相信可以从中受益的数据仓库,但 90% 的重要日期是日期类型,而不是日期时间。我使用的是 SQL 2014,但任何版本的信息都会有所帮助。
是的,它适用于
date
和datetime
列。实验相当简单 - 创建一个带有选项的数据库,创建具有两种类型的表,插入满足相关模式的数据(就像一个表中的所有日期都在另一个表中的日期之后),运行一些利用它的查询模式,然后观察自动创建的统计数据对于两组表是相同的。创建数据库并打开选项:
创建两个具有相关
date
列的表,以及两个具有相关datetime
列的表:插入一些相关数据:
现在运行一个可能从相关统计中受益的查询(虽然,实际上,任何连接都可以):
现在,检查统计数据:
我机器上的结果(您的统计信息名称会有所不同)显示统计信息是在
(id, date/datetime column of parent)
和上创建的(date/datetime column of child)
:如果这适用于 , 和 ,或者如果一列是 ,另一列是 ,我将把它
time
作为datetime2
练习datetimeoffset
留给date
读者datetime
。