谜题1 财政年度表

本文介绍了SQLSERVER中日期函数的使用方法,如GETDATE(), DATEPART(), DATEADD(), DATEDIFF() 和 CONVERT(),并提供了实例。同时,详细解释了如何通过primary key, unique, check 和 not null等实现完整性约束。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

先讲下我一开始看到这本书的感觉。。。怪怪的。。。谜题。。。每个谜题后面还附带了一张图片。

开始吧。

第一个谜题让我了解了上数据库课时候一笔带过的知识~还不错~~

1.让我们了解了 DATE的用法。每个DBMS的DATE用法都是不一样的,我用的是SQL SERVER,照着书上的打了后发现不对。郁闷。比如EXTRACT(YEAR FROM date)

查了下发现SQL SERVER根本没有。

函数描述
GETDATE()返回当前日期和时间
DATEPART()返回日期/时间的单独部分
DATEADD()在日期中添加或减去指定的时间间隔
DATEDIFF()返回两个日期之间的时间
CONVERT()用不同的格式显示日期/时间
GETDATE()返回当前日期和时间
DATEPART()返回日期/时间的单独部分
DATEADD()在日期中添加或减去指定的时间间隔
DATEDIFF()返回两个日期之间的时间
CONVERT()用不同的格式显示日期/时间
GETDATE()返回当前日期时间。

DATEPART(part,date)返回日期/时间的单独部分; 整数

DATEADD(part,number,date) 在日期中添加或减去指定的时间间隔;

DATEDIFF(part,startdate,enddate)返回两个日期之间的天数;

CONVERT(data_type(length),date_to_be_conversed,style);转换日期格式

其中part可为:

年 yyyy

月 mm

日dd

年中的日 dy

周ww

星期dw

小时hh

分钟 mi

秒 s

毫秒ms

其中date就是DATE类型 是一个字符串,所以用单引号括起。

2.完整性约束的实践。

看书上都觉得懂,但是一到操作就会觉得怪怪的。

完整性约束分为

(1)primary key(...) 主码

(2)unique(...) 唯一,不能有重复

(3)constraint[name] check(...) 定义了名字后可以清晰差错。

(4)not null 非空

以下是谜题1的解。

CREATE TABLE FiscalYears ( fiscal_year INTEGER not null primary key, start_date DATE not null, constraint start1 check(DATEPART(yyyy,start_date) = fiscal_year-1), constraint start2 check(DATEPART(mm,start_date)=10), constraint start3 check(DATEPART(dd,start_date)=01), end_date DATE not null, constraint end1 check(DATEPART(yyyy,end_date)=fiscal_year), constraint end2 check( DATEPART(mm,end_date)= 09), constraint end3 check(DATEPART(dd,end_date)= 30), constraint end4 check(start_date<end_date ), unique (fiscal_year,start_date,end_date) ); insert into FiscalYears values(1994,'1993-10-01','1994-09-30'); //插入范例

总结:

1.date用法

2.完整性约束用法

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值