此代码在没有重复数据的时候,生成一个月的考勤数据时间是8秒。 万望各位高手帮忙解答解答。SQL 代码中的 ''''+ 只是为了导出EXCEL的时候转换为文本类型,保持 员工号00005 日期 2010-09-10 等等的形式。还少了一个表结构CREATE TABLE ttt ( id INT IDENTITY(1,1), usercode CHAR(5), workday CHAR(10), timeon DATETIME, timeoff DATETIME, ontime DATETIME, offtime DATETIME, early AS ( CASE WHEN DATEDIFF(n,timeon,ontime)<=0 THEN NULL ELSE DATEDIFF(n,timeon,ontime) END ), late AS ( CASE WHEN DATEDIFF(n,offtime,timeoff)<=0 THEN NULL ELSE DATEDIFF(n,offtime,timeoff) END ) ) 缺少USERINFO表可以不用。
万望各位高手帮忙解答解答。SQL 代码中的 ''''+ 只是为了导出EXCEL的时候转换为文本类型,保持 员工号00005 日期 2010-09-10 等等的形式。还少了一个表结构CREATE TABLE ttt
(
id INT IDENTITY(1,1),
usercode CHAR(5),
workday CHAR(10),
timeon DATETIME,
timeoff DATETIME,
ontime DATETIME,
offtime DATETIME,
early AS ( CASE WHEN DATEDIFF(n,timeon,ontime)<=0 THEN NULL ELSE DATEDIFF(n,timeon,ontime) END ),
late AS ( CASE WHEN DATEDIFF(n,offtime,timeoff)<=0 THEN NULL ELSE DATEDIFF(n,offtime,timeoff) END )
)
缺少USERINFO表可以不用。
考勤数据是从文本导入的,用的是BULK INSERT,好像没有办法配置表的列