日期:2014-05-18 浏览次数:20742 次
--创建timesutc表
IF OBJECT_ID('timesutc') IS NOT NULL
DROP TABLE timesutc;
GO
CREATE TABLE timesutc
(id INT IDENTITY(1,1),
time1 DATETIME NULL,
timesutc BIGINT NULL );
--创建条件插入语句
declare @datetime INT,
@dw INT,
@dt DATETIME,
@dt2 DATETIME;
--@timesty AS timesutctype;
SET @dt='2012-07-05';
SET @dt2=DATEADD(dy,1,@dt);
WHILE @dt2<='2012-07-26'
BEGIN
SET @dw=DATEPART(dw,@dt2);
IF @dw<>1 OR @dw<>7
BEGIN
set @datetime=DATEDIFF(ss,'1970-01-01 00:00:00',@dt2);
INSERT INTO timesutc VALUES (@dt2,@datetime);
END;
SET @dt2=DATEADD(dy,1,@dt2);
END;
IF OBJECT_ID('timesutc') IS NOT NULL
DROP TABLE timesutc;
GO
CREATE TABLE timesutc
(id INT IDENTITY(1,1),
time1 DATETIME NULL,
timesutc BIGINT NULL
);
declare @dt DATETIME,@dt2 DATETIME;
--@timesty AS timesutctype;
SET @dt='2012-07-05';
select @dt2=DATEADD(DD,1,@dt)
while @dt2<='2012-07-26'
begin
if DATEPART(W,@dt2)=1 or DATEPART(W,@dt2)=7
begin
set @dt2=DATEADD(DD,1,@dt2)
end
else
begin
insert timesutc
select @dt2,DATEDIFF(SS,'1970-01-01 00:00:00',@dt2)
set @dt2=DATEADD(DD,1,@dt2)
end
end
select * from timesutc
/*
id time1 timesutc
1 2012-07-06 00:00:00.000 1341532800
2 2012-07-09 00:00:00.000 1341792000
3 2012-07-10 00:00:00.000 1341878400
4 2012-07-11 00:00:00.000 1341964800
5 2012-07-12 00:00:00.000 1342051200
6 2012-07-13 00:00:00.000 1342137600
7 2012-07-16 00:00:00.000 1342396800
8 2012-07-17 00:00:00.000 1342483200
9 2012-07-18 00:00:00.000 1342569600
10 2012-07-19 00:00:00.000 1342656000
11 2012-07-20 00:00:00.000 1342742400
12 2012-07-23 00:00:00.000 1343001600
13 2012-07-24 00:00:00.000 1343088000
14 2012-07-25 00:00:00.000 1343174400
15 2012-07-26 00:00:00.000 1343260800
*/
------解决方案--------------------
IF @dw<>1 AND @dw<>7