我必须创建一个包含3列的表(dtFrom,dtTo,service_time)。 dtFrom& dtTo是datetime,service_time是int。现在在datetime列中,我必须将日期保存为2018年4月22日。我应该如何在CREATE TABLE查询中设置格式。
我用谷歌搜索了它,但没有找到任何帮助。
下面是CREATE TABLE查询:
create table tbl_previous_policy
(
dtFrom datetime NOT NULL,
dtTo datetime NOT NULL,
service_time int NOT NULL
)
现在我应该如何在上面的查询中设置datetime列的格式?
答案 0 :(得分:0)
@MitchWheat在评论中绝对正确。日期/时间以内部格式存储。
您可以做的一件事是向表中添加一个计算列,并将其用于正确的格式。你可以这样做:
create table tbl_previous_policy (
dtFrom datetime NOT NULL,
dtTo datetime NOT NULL,
service_time int NOT NULL,
dtFrom_ddmmmyyyy as ( replace(convert(varchar(11), dtFrom, 106), ' ', '-') ),
dtTo_ddmmmyyyy as ( replace(convert(varchar(11), dtTo, 106), ' ', '-') )
);
如果要以首选格式输出日期,现在可以使用其他字段。您还可以使用内置日期/时间功能操作现有值。