微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

时态表SYSTEM_TIME范围不起作用

如何解决时态表SYSTEM_TIME范围不起作用

我有一个定义为的时态表:

CREATE TABLE [dbo].[MyTable](
    [Id] [int] IDENTITY(1,1) NOT NULL,[Name] [varchar](200) NOT NULL,[Description] [varchar](100) NULL,[CreatedOn] [datetime] NULL,[LastUpdatedOn] [datetime] NULL,[SysstartTime] [datetime2](7) GENERATED ALWAYS AS ROW START NOT NULL,[SysEndTime] [datetime2](7) GENERATED ALWAYS AS ROW END NOT NULL
 CONSTRAINT [PK_MyTable] PRIMARY KEY CLUSTERED 
(
    [Id] ASC
)WITH (PAD_INDEX = OFF,STATISTICS_norECOmpuTE = OFF,IGnorE_DUP_KEY = OFF,ALLOW_ROW_LOCKS = ON,ALLOW_PAGE_LOCKS = ON) ON [PRIMARY],PERIOD FOR SYstem_TIME ([SysstartTime],[SysEndTime])
) ON [PRIMARY]
WITH
(
SYstem_VERSIONING = ON ( HISTORY_TABLE = [dbo].[MyTable_History] )
)

当我尝试执行这样的查询时:

SELECT * FROM MyTable FOR SYstem_TIME from '2020-08-18 00:00:00' to '2020-08-18 23:59:59' 

我似乎也得到了不在该范围内的行。例如,

Name1 Description1 2018-07-05 22:53:36.543 2020-03-17 16:25:44.707 2020-07-22 18:21:03.9662004 9999-12-31 23:59:59.9999999

2020-07-22不在范围内,但为什么显示呢?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。