日期:2014-05-17 浏览次数:20514 次
create table ontimek
(
rq varchar(20),
ontime varchar(8),
shky varchar(10)
)
insert into ontimek values ('2010-10-30', '07:00:00', '张三')
insert into ontimek values ('2010-10-30', '08:00:00', '张三')
insert into ontimek values ('2010-10-30', '09:00:00', '张三')
insert into ontimek values ('2010-10-30', '10:00:00', '张三')
insert into ontimek values ('2010-10-30', '11:00:00', '张三')
insert into ontimek values ('2010-10-30', '12:00:00', '张三')
insert into ontimek values ('2010-10-30', '13:00:00', '张三')
insert into ontimek values ('2010-10-30', '14:00:00', '李四')
insert into ontimek values ('2010-10-30', '15:00:00', '李四')
insert into ontimek values ('2010-10-30', '16:00:00', '李四')
insert into ontimek values ('2010-10-30', '17:00:00', '李四')
insert into ontimek values ('2010-10-30', '18:00:00', '李四')
insert into ontimek values ('2010-10-30', '19:00:00', '李四')
insert into ontimek values ('2010-10-30', '20:00:00', '李四')
insert into ontimek values ('2010-10-30', '21:00:00', '李四')
--能不能根据ontime判断查出来的数据07:00:00到13:00:00的时候为A
--14:00:00到21:00:00为B
--能否查询出下面这种结果
rq ontime shky SK
2010-10-30 07:00:00 张三 A
2010-10-30 08:00:00 张三 A
2010-10-30 09:00:00 张三 A
2010-10-30 10:00:00 张三 A
2010-10-30 11:00:00 张三 A
2010-10-30 12:00:00 张三 A
2010-10-30 13:00:00 张三 A
2010-10-30 14:00:00 李四 B
2010-10-30 15:00:00 李四 B
2010-10-30 16:00:00 李四 B
2010-10-30 17:00:00 李四 B
2010-10-30 18:00:00 李四 B
2010-10-30 20:00:00 李四 B
2010-10-30 21:00:00 李四 B
select *, sk=case when ontime between '07:00:00' and '13:00:00' then 'A' else 'B' end from ontimek
------解决方案--------------------
select *,
sk=case
when ontime between '07:00:00' and '13:00:00'
then 'A'
when ontime between '14:00:00' and '21:00:00'
then 'B'
end
from
ontimek
/**
rq ontime shky sk
-------------------- -------- ---------- ----
2010-10-30 07:00:00 张三 A
2010-10-30 08:00:00 张三 A
2010-10-30 09:00:00 张三 A
2010-10-30 10:00:00 张三 A
2010-10-30 11:00:00 张三 A
2010-10-30 12:00:00 张三 A
2010-10-30 13:00:00 张三 A
2010-10-30 14:00:00 李四 B
2010-10-30 15:00:00 李四 B
2010-10-30 16:00:00 李四 B
2010-10-30 17:00:00 李四 B
2010-10-30 18:00:00 李四 B
2010-10-30 19:00:00 李四 B
2010-10-30 20:00:00 李四 B
2010-10-30 21:00:00 李四 B
(15 行受影响)
**/