请教,这道SQL题目该如何做?第五道新旧两表间的数据迁移
4、 为配合公司内部资料管理制度,我们建立了资料出库(借阅)信息表(hyzl_ck)。其结构及内容如下:
编号 书名编号 书名 借阅部门 借阅人 出库日期 归还
(no) (book_no) (book_name) (dept) (reader) (lend date)(return)
0001 La-001 经济法简介 财会部 李小明 03/02/1997 否
0003 Co-004 Oracle指南 研发部 张力 02/24/1998 否
0007 Co-021 VC++Manual 工程部 潘平 08/17/1997 否
0009 La-002 企业法 管理部 曾斌 08/08/1998 否
0018 La-005 现代企业管理制度 研发部 王知名 05/23/1998 否
请写出SQL语句,列出到今天为止,所有超过借阅期限且未还书(三个月)的借阅人姓名及所借书籍名称。
5、 由于设计工作的疏忽,使用中我们发现资料出库(借阅)信息表(hyzl_ck)中的字段不够完整,为此我们创建了新的资料出库(借阅)信息表(hyzl_jy),新表中增加了两个新的字段:借阅期限(limit_date)和归还日期(remand_date)。现需进行新旧两表间的数据迁移并将借阅期限字段的值填写为出库日期后的三个月,请写出相应的SQL语句。
------解决方案--------------------DATADIFF(YEAR,lend date,GETDATE())> 0 OR
DATADIFF(MONTH,lend date,GETDATE())> 3
------解决方案--------------------4\
CREATE TABLE dbo.hyzl_ck (
[编号] INT IDENTITY(1,1),
[书名编号] char(10),
[书名] VARCHAR(100),
[借阅部门] VARCHAR(10),
[借阅人] VARCHAR(8),
[出库日期] DATETIME,
[归还] BIT
CONSTRAINT [PK_hyzl_ck] PRIMARY KEY CLUSTERED
(
[编号] ASC
) ON [PRIMARY]
)ON [PRIMARY]
------解决方案--------------------SELECT [借阅人],[书名]
FROM dbo.hyzl_ck WITH (NOLOCK)
WHERE
DATEDIFF(YEAR,[出库日期],GETDATE())> 0 OR
DATEDIFF(MONTH,[出库日期],GETDATE())> 3
------解决方案--------------------徵 软 在 线 工程师的服务态度蛮好的嘛!