oracle day02 总结

作者在 2007-09-13 08:48:00 发布以下内容
         oracle day02 总结
  
1、where子句(选择操作)

 where子句使用在 select ... from ... 后面,用来选择所需(符合条件的)的记录

 例:查询George的工资
     select first_name,salary from s_emp where first_name='George';

 
 where后面跟的是表达式 也就是 XXX=XXX, XXX between X and X  ,XXX in(X,X,X)
 like '...' 通配查询

 between ... and ... ,表示结果在这之间,between and是一个闭区间,也就相当于... <= ... and ... >= ... 。

 !=,<>,^=,这三个都标识不等于,<=,>=,=,这些运算符都可以使用。

 ... in (va1,val2,...) 判断结果是否在这个集合中存在,等于其中随变一个就行了,可以说in=any
 in中集合的数据是有顺序的,概率高的数据放在前面可提高效率
 
 not in<>all 没有顺序
 空值会对not in造成影响,也就是不等于任何值,但是空值例外。

 like '...' 字符串通配查询,'%'表示0或任意多个字符,'_',表示任意一个字符。
 注意:转义的用法:like ‘S\_%’ escape ‘\’
 
 例:找出表名是以s_开头的表
  select table_name from user_tables where table_name like 'S\_%' escape '\';  把\定义为转义字符

 ... is null 使用来判断值是否为空。is not null 判断值不为空
 例:查看哪些人没有提成
     select first_name from s_emp where commission_pct is null;


      ... and ... 表示只有两个条件同时满足
 ... or ... 表示条件只要满足其中只一就可以
 all ... 是要求都满足条件。


 注意:Oracle中的字符串是严格区分大小写的。

 (1)注意数据类型,数字类型直接写,字符用'......' ,缺省格式的Date可以用'......',只有别名才用" "包含。
 (2)选择合适的运算符  


2、单行函数(一个输入,一个输出)
       多行函数又叫组函数(多个输入,一个输出)例平均值

 1.字符函数

    字符是大小写敏感的
    转小写 lower(字段名)      ---  其中的参数可以是一个字符串常量或是一个字段名
    转大写 upper(字段名)
    首字母大写 initcap(字段名)
    字符串拼接 concat(字段1, 字段2)
    截取子串 substr(字段名, 起始位置,取字符个数)
 返回字符串长度length(字符串)

    dual表,是专门用于函数测试和运算的,他只有一条记录 

    可以使用"-"表示从右向左取,取的时候可以从左往右取。
     例:select substr(first_name,-2,2) sub from s_emp;(取后两个)
       select substr(first_name,2,2) sub from s_emp;(取前两个)

 nvl是一般函数,支持任何数据类型
      
 2.数值函数

    四舍五入 round(数据,保留小数点后几位)
    可以用负数表示小数点前,0,表示小数点后第一位,也就是保留个位,-1表示个位(保留到十位)。
    例:select round(15.36,1) from dual;

    截取数字函数 trunc(数据,保留的位数(小数点后位数)) 截取个位之后补0
    例:select trunc(123.456,1) from dual; 
  
 3.日期函数
 
    日期格式,
    全日期格式 世纪信息,年月日,时分秒。
    缺省日期格式,日-月-年 dd-mon-rr
    修改当前会话的日期格式,会按照指定的格式输出日期
    alter session set nls_date_format='yyyy mm dd hh24:mi:ss';

    返回当前日期 sys

宝贝资料 | 阅读 2947 次
文章评论,共0条
游客请输入验证码