易截截图软件、单文件、免安装、纯绿色、仅160KB

sqlServer,oracle中case关键字的用法

    在写SQL时,有时要根据已有的列值构造新的列值,这时就要用到的SQL中的case关键字。如下所示查询负责人信息表(T_MS_CustomerCrmInfoDutyPerson)中的是否是主要负责人(isMainDuty)字段,但是这个字段的值是以枚举的方式存储的,存储0表示是否,1表示是,否则表示未判断。这时直接查询出的值不是自己需要的值,可以用case关键字重新构建列值。
select case
          when cfdutystate=0 then '否'
          when cfdutystate=1 then '是'
          else null
       end as isMainDuty
from T_MS_CustomerCrmInfoDutyPerson
注意点:
1,以case开头,以end结尾
2,when后跟条件分支中,then后为显示结果
3,else为除此之外的默认情况,类似于java的switch case的default,可以不加
4,Oracle中end后跟别名或者sqlserver中语法如下:
isMainDuty =case
                         when cfdutystate=0 then '否'
                         when cfdutystate=1 then '是'
                         else null
                    end
除此之外,case也可以用到group by语句中以根据需要实现灵活的分组操作,如下所示的列子:
SELECT
    CASE
        WHEN price IS NULL THEN 'Unpriced'
        WHEN price < 10 THEN 'Bargain'
        WHEN price BETWEEN 10 and 20 THEN 'Average'
        ELSE 'Gift to impress relatives'
  &n


相关文档:

oracle 导入/出命令

导入 IMP
Oracle 的导入实用程序 (Import utility) 允许从数据库提取数据,并且将数据写入操作系统文件。 imp 使用的基本格式: imp[username[/password[@service]]] ,以下例举 imp 常用用法。
 
1. 获取帮助
  imp help=y
2. 导入一个完整数据库
  imp system/manager file=bible_db log=dibl ......

Oracle的日期函数

 
Oracle的日期函数
 
 常用日期型函数 
1。Sysdate 当前日期和时间
SQL> Select sysdate from dual;
SYSDATE
----------
21-6月 -05
2。Last_day 本月最后一天 
SQL> Select last_day(sysdate) from dual;
LAST_DAY(S ......

ORACLE体系结构 实例

ORACLE实例有系统全局区(SGA)和一些后台进程组成.
系统全局区(SGA)有共享池(shared pool),数据库高速缓冲区(database buffer cache),重做日志缓冲区(redo log buffer).共享池又有库高速缓存(library cache)和数据字典高速缓存(dictionary cache)组成。
ORACLE 实例5个必需的后台进程:SMON,PMON,DBWR,LGWR, ......

Oracle时区

商业和数据库很多时候必须跨时区工作,从9i开始,oracle环境开始有了时区意识,通过指定数据库的时区和使用TIMESTAMP WITH TIME ZONE和TIMESTAMP WITH LOCAL TIME ZONE数据类型来实现该功能。
TIMESTAMP WITH TIME ZONE不会存储数据库时区,但是有一个指示用来说明该时间所使用的时区。TIMESTAMP WITH LOCAL TIME ZONE会同 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号