项目中会遇到比较复杂的业务逻辑,使用程序几经与数据之间的交互无疑会降低效率,因此,需要借助于数据库自生的特点,CASE语句是其中的一种:
SELECT
DISTINCT
BC,
CASE
WHEN
BC
=
'
夜班
'
THEN
'
1
'
WHEN
BC
=
'
白班
'
THEN
'
2
'
WHEN BC = ' 中班 ' THEN ' 3 ' ELSE ' 4 ' AS BCNUM FROM MW_APP. END "
FROM TABLEA
WHEN BC = ' 中班 ' THEN ' 3 ' ELSE ' 4 ' AS BCNUM FROM MW_APP. END "
FROM TABLEA
这个语句来源于一个日志查询的需求。在调度台分为三班,为了达到跨班查询的目的,将汉字转换为1-4,这样当跨时就这样查:
2007-6-203 - 2007-6-282,即20号的中班到28号的白班