六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 35|回复: 0

函数---trunc,LEAST,COALESCE ,TRANSLATE,convert,REPLACE

[复制链接]

升级  59.33%

112

主题

112

主题

112

主题

举人

Rank: 3Rank: 3

积分
378
 楼主| 发表于 2013-1-26 12:48:44 | 显示全部楼层 |阅读模式
select trunc(sysdate,'DD') AA,trunc(sysdate,'MM') BB,trunc(sysdate,'yyyy') CC,trunc(sysdate,'day')from dual;得到的结果:  AA             BB          CC         trunc(sysdate,'day')2010-8-11    2010-8-1   2010-1-1        2010-8-8AA列得到当天,bb列得到当月第一天,CC列得到当年第一天,trunc(sysdate,'day')列(在查询时没有定义列名)得到本周第一天trunc(sysdate,'DD')就想成是精确到天,后面的初始化trunc(sysdate,'MM')精确到月,后面的初始化trunc(sysydate) 精确到日What will the following statement return?SELECT last_name, first_name, start_dateFROM employeesWHERE hire_date < TRUNC(SYSDATE) – 5;返回被雇佣超过5天的员工-----------------------LEAST---返回最小值SELECT LEAST(SYSDATE,'15-MAR-2002','17-JUN-2002') oldestFROM dual;OLDEST-----------27-NOV-2001SELECT ename, sal, LEAST(sal, 3000) FROM emp;ENAME         SAL      LEAST(SAL,3000)---------- ---------- ---------------SMITH        800        800ALLEN        1600       1600KING         5000       3000-----------------------COALESCE (expression_1, expression_2, ...,expression_n)第一个非空的表达式是函数的返回值,如果所有的表达式都是空值,最终将返回一个空值。 ----------------------一、语法:    TRANSLATE(string,from_str,to_str)TRANSLATE  是   REPLACE   所提供的功能的一个超集。是一个字母一个字母对应,而且是全部替换1. SELECT   TRANSLATE('abcdefghij','abcdef','123456')   FROM   dual;      2. TRANSLATE   (      3. --------------      4. 123456ghij      5.     6. SELECT   TRANSLATE('abcdefghij','abcdefghij','123456')   FROM   dual;      7. TRANSL      8. ----------      9. 123456    select translate('abcbbaadef','ba','#@') from dual (b将被#替代,a将被@替代)select translate('abcbbaadef','bad','#@') from dual (b将被#替代,a将被@替代,d对应的值是空值,将被移走)因此:结果依次为:@#c##@@def 和@#c##@@ef-------------------convertSQL> SELECT CONVERT('????????','WE8ISO8859P1','ZHS16GBK') AAA FROM DUAL;把一种字符集转换成另外一种-------------------------------EXTRACTSELECT SYSDATE,EXTRACT(YEAR FROM SYSDATE ) YEAR,EXTRACT(MONTH FROM SYSTIMESTAMP) MONTH,EXTRACT(TIMEZONE_HOUR FROM SYSTIMESTAMP) TZHFROM dual;SYSDATE YEAR MONTH TZH-------------------- ---------- ---------- ----------24-SEP-2002 05:04:26 2002 9 -5The valid components are YEAR, MONTH, DAY,HOUR, MIN, SECOND, TIMEZONE_HOUR, TIMEZONE_MINUTE, TIMEZONE_REGION,and TIMEZONE_ABBR.---------------------------REPLACESELECT REPLACE('uptown','up','down') FROM dual;REPLACE(--------downtown
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表