http://community.csdn.net/Expert/topic/5073/5073353.xml?temp=3.689212E-02
解决方案 »
- 热乎乎的新手问题,关于某句查询语句的...
- 能不能吧 查询语句结果插入已有表的数据中
- SQLServer2005建表不成功,提示不允许 DDL 语句???
- SQL2005password问题
- 记录锁死的问题,高手请进;
- 救急--数据被截断???在线等待
- 用 ADO 从数据库查找所有,如果记录很多(十万或更多),可不可以? ADO 是怎样处理的?
- 请教:sql server7.0中,有人通过Enterprise Manager修改了数据库中的记录,我是否可以跟踪到这些修改?
- 如何用命令行方式实现SQLserver Enterprise中的 Generate SQL Script功能?
- 大学生刚学数据库,装sql遇到的问题,求解
- 相关度排序问题
- sqlserver2005 中的全文检索 数据到什么容量的时候 会受不了。计算机普通一般配置
--SET Language 繁體中文
--SET Language 简体中文Create Table TEST
(id varchar(10),
MATHINENO varchar(10),
MSGTYPE int,
WORKTIME datetime)
Insert TEST Select '001', '001', 0, '2007-3-21 7:41:39'
Union All Select '002', '001', 1, '2007-3-21 9:41:39'
Union All Select '003', '001', 0, '2007-3-21 11:41:39'
Union All Select '004', '001', 1, '2007-3-21 12:41:39'
Union All Select '005', '001', 0, '2007-3-21 15:41:39'
Union All Select '006', '001', 1, '2007-3-21 20:41:39'
Union All Select '007', '001', 0, '2007-3-22 8:41:39'
Union All Select '008', '001', 1, '2007-3-22 9:41:39'
Union All Select '009', '001', 0, '2007-3-22 11:41:39'
Union All Select '010', '001', 1, '2007-3-22 12:41:39'
Union All Select '011', '001', 0, '2007-3-22 15:41:39'
Union All Select '012', '001', 1, '2007-3-22 19:41:39'
GO
--Select * From TEST
Select
MATHINENO,
Convert(Varchar, 第一次点火时间, 120) + (Case When DatePart(Hour, 第一次点火时间) < 8 Then N'(正常)' Else N'(不正常)' End) As 第一次点火时间,
Convert(Varchar, 最后一次熄火时间, 120) + (Case When DatePart(Hour, 最后一次熄火时间) >= 20 Then N'(正常)' Else N'(不正常)' End) As 最后一次熄火时间,
WORKTIME
From
(
Select
MATHINENO,
Min(Case MSGTYPE When 0 Then WORKTIME Else Null End) As 第一次点火时间,
Max(Case MSGTYPE When 1 Then WORKTIME Else Null End) As 最后一次熄火时间,
Convert(Varchar(10), WORKTIME, 120) As WORKTIME
From
TEST
Group By
MATHINENO,
Convert(Varchar(10), WORKTIME, 120)
) A
GO
Drop Table TEST
GO
/*
MATHINENO 第一次点火时间 最后一次熄火时间 WORKTIME
001 2007-03-21 07:41:39(正常) 2007-03-21 20:41:39(正常) 2007-03-21
001 2007-03-22 08:41:39(不正常) 2007-03-22 19:41:39(不正常) 2007-03-22
*/