日期:2014-05-17 浏览次数:20415 次
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 行受影响) **/