SQL Server TIME 数据类型介绍
SQL Server 中的 TIME
数据类型存储时间值,表示一天内的时间(小时、分钟、秒、毫秒),不包括日期部分。
语法
TIME
数据类型的语法如下:
TIME [ (fractional_seconds_scale) ]
fractional_seconds_scale
是可选的,表示秒的小数位数。如果未指定 fractional_seconds_scale
,则默认为 0。
使用场景
TIME
数据类型主要用于存储时间值,例如表示活动的持续时间、预计到达时间等。此外,它还可用于在 SQL Server 中存储时间戳。
示例
以下是两个使用 SQL Server TIME
数据类型的示例。
示例 1:存储活动时间
假设有一个表 Activity
,其中包含一个名称和一个持续时间(使用 TIME
数据类型)列。下面是一些示例数据:
Name | Duration |
---|---|
Meeting | 01:30:00.000000 |
Exercise | 00:45:00.000000 |
Lunch break | 00:30:00.000000 |
可以使用以下 SQL 语句创建表 Activity
:
CREATE TABLE Activity
(
Name VARCHAR(50) NOT NULL,
Duration TIME(6) NOT NULL
);
示例 2:存储时间戳
假设要在表中存储创建和修改记录的时间戳。可以使用两个 TIME
数据类型的列,一个表示创建时间,另一个表示修改时间。以下是一个示例表:
CREATE TABLE MyTable
(
ID INT NOT NULL,
CreatedTime TIME(3) NOT NULL,
ModifiedTime TIME(3) NOT NULL
);
在插入新行时,可以使用 GETDATE()函数获取当前时间:
INSERT INTO MyTable (ID, CreatedTime, ModifiedTime)
VALUES (1, GETDATE(), GETDATE());
结论
在 SQL Server 中, TIME
数据类型用于存储时间值,例如活动的持续时间或预计到达时间。它还可用于存储时间戳。在创建表时,可以指定秒的小数位数。尽管它不能存储日期信息,但它可以与其他日期数据类型(如 DATETIME
)一起使用。