ITPub博客

首页 > 数据库 > Oracle > sql函数命令大全

sql函数命令大全

Oracle 作者:nickonline2006 时间:2013-08-11 15:45:37 0 删除 编辑

 

sql函数大全
一、内部函数 
1、内部合计函数 
1)COUNT(*) 返回行数 
2)COUNT(DISTINCT COLNAME) 返回指定列中唯一值的个数 
3)SUM(COLNAME/EXPRESSION) 返回指定列或表达式的数值和; 
4)SUM(DISTINCT COLNAME) 返回指定列中唯一值的和 
5)AVG(COLNAME/EXPRESSION) 返回指定列或表达式中的数值平均值 
6)AVG(DISTINCT COLNAME) 返回指定列中唯一值的平均值 
7)MIN(COLNAME/EXPRESSION) 返回指定列或表达式中的数值最小值 
8)MAX(COLNAME/EXPRESSION) 返回指定列或表达式中的数值最大值 
2、日期与时间函数 
1)DAY(DATE/DATETIME EXPRESSION) 返回指定表达式中的当月几号 
2)MONTH(DATE/DATETIME EXPRESSION) 返回指定表达式中的月份 
3)YEAR(DATE/DATETIME EXPRESSION) 返回指定表达式中的年份 
4)WEEKDAY(DATE/DATETIME EXPRESSION) 返回指定表达式中的当周星期几 
5)DATE(NOT DATE EXPRESSION) 返回指定表达式代表的日期值 
6)TODAY 返回当前日期的日期值 
7)CURRENT[FIRST TO LAST] 返回当前日期的日期时间值 
8)COLNAME/EXPRESSION UNITS PRECISION 返回指定精度的指定单位数 
9)MDY(MONTH,DAY,YEAR) 返回标识指定年、月、日的日期值 
10)DATETIME(DATE/DATETIME EXPRESSION)FIRST TO LAST 返回表达式代表的日期时间值 
11)INTERVAL(DATE/DATETIME EXPRESSION)FIRST TO LAST 返回表达式代表的时间间隔值 
12)EXTEND(DATE/DATETIME EXPRESSION,[FIRST TO LAST])返回经过调整的日期或日期时间值 
To_char函数将datetime和date值转化为字符值。 
To_date函数将字符值转化为datetime类型的值。例to_date(“1978-10-07 10:00” ,”%Y-%m-%d %H:%M) 
例子1、和UNITS合用,指定日期或时间单位(year,month,day,hour,minute,seond,fraction): 
let tmp_date = today + 3 UNITS day 
例子2、let tmp_date = MDY(10,30,2002) -- 2002-10-30 
例子3、let tmp_date = today + interval(7) day to day --当前时间加上7天; 
注:该功能与1相似; 
例子4、EXTEND转换日期或日期时间值 
let tmp_inthour = extend(datetime1,hour to hour)

3、代数函数 
1)ABS(COLNAME/EXPRESSION): 取绝对值 
2)MOD(COLNAME/EXPRESSION,DIVISOR) 返回除以除数后的模(余数) 
3)POW(COLNAME/EXPRESSION,EXPONENT) 返回一个值的指数冥 
例子:let tmp_float = pow(2,3) --8.00000000

4)ROOT(COLNAME/EXPRESSION,[INDEX]) 返回指定列或表达式的根值

5)SQRT(COLNAME/EXPRESSION) 返回指定列或表达式的平方根值

6)ROUND(COLNAME/EXPRESSION,[FACTOR]) 返回指定列或表达式的圆整化值 
7)TRUNC(COLNAME/EXPRESSION,[FACTOR]) 返回指定列或表达式的截尾值 
说明:上两者中FACTOR指定小数位数,若不指定,则为0;若为负数,则整化到小数点左边; 
注:ROUND是在指定位上进行4舍5入;TRUNC是在指定位上直接截断; 
let tmp_float = round(4.555,2) --4.56 
let tmp_float = trunc(4.555,2) --4.55

4、指数与对数函数 
1)EXP(COLNAME/EXPRESSION) 返回指定列或表达式的指数值 
2)LOGN(COLNAME/EXPRESSION) 返回指定列或表达式的自然对数值 
3)LOG10(COLNAME/EXPRESSION) 返回指定列或表达式的底数位10的对数值

5、三角函数 
1)COS(RADIAN EXPRESSION) 返回指定弧度表达式的余弦值 
2)SIN(RADIAN EXPRESSION) 正弦 
3)TAN(RADIAN EXPRESSION) 正切 
4)ACOS(RADIAN EXPRESSION) 反余弦 
5)ASIN(RADIAN EXPRESSION) 反正弦 
6)ATAN(RADIAN EXPRESSION) 反正切 
7)ATAN2(X,Y) 返回坐标(X,Y)的极坐标角度组件

6、统计函数 
1)RANGE(COLNAME) 返回指定列的最大值与最小值之差 = MAX(COLNAME)-MIN(COLNAME) 
2)VARIANCE(COLNAME) 返回指定列的样本方差; 
3)STDEV(COLNAME) 返回指定列的标准偏差;

7、其他函数 
1)USER 返回当前用户名 
2)HEX(COLNAME/EXPRESSION) 返回指定列或表达式的十六进制值 
3)LENGTH(COLNAME/EXPRESSION) 返回指定字符列或表达式的长度 
4)TRIM(COLNAME/EXPRESSION) 删除指定列或表达式前后的字符 
5)COLNAME/EXPRESSION || COLNAME/EXPRESSION 返回并在一起的字符; 
8、基数函数: 
1)cardinality(仅适用IDS)函数对集合包含的元素数目计数。 
智能大对象函数,(仅适用与IDS) 
filetoblob( ),将文件复制到BLOB列中 
filetoclob( ),将文件复制到CLOB列中 
locopy( ),将BLOB或CLOB类型的数据复制到另一个BLOB或CLOB列中 
lotofile( ),将BLOB或CLOB复制到文件中 
9、字符串处理函数: 
lower,将字符串中每个大写字母转换为小写字母 
upper,将字符串中每个小写字母转换为大写字母 
initcap,将字符串中每个词的首写字母转换成大写 
replace,将字符串中的某一组字符转换成其他字符,例replace(col,”each”,”eve”) 
substr,返回字符串中的某一部分,例substr(col,1,2) 
substring,返回字符串中的某一部分,例substring(col,from 1 to 4) 
lpad,使用lpad函数已用重复次数达到必要次数的字符序列在左边填充或截断的字符串的副本,这取决于字符串中填充部分的指定长度。 
举例:字段 col 为char(15)类型,select lpad(col,21,”_”) from tab_name则显示为在col前加上六个_。 
Rpad,使用rpad函数已用重复次数达到必要次数的字符序列在右边填充或截断的字符串的副本,这取决于字符串中填充部分的指定长度。 
举例:字段col为char(15)类型,select rpad(col,21,”_”) from tab_name则显示为在col后边加上六个_。 
10、其他函数: 
hex,返回表达式的十六进制数 
round,返回表达式的四舍五入值 
trunc,返回表达式的截断值 
length,计算表达式的长度 
user,返回执行查询的用户的用户名(登陆帐户名) 
today,返回当前系统日期 
dbservername,返回数据库服务器的名称,同sitename 
dbinfo,返回数据库的相关信息 
decode,函数来将一个具有一个值的表达式转换为另一个值 
decode(test,a,a_value,b,b_value,c,c_value……),decode函数不支持TEXT和BYTE类型。 
Nvl,来将求值为空的表达式转化为另一个想要指定的值。 
另外还可以在select语句中使用存储过程,如select spl($test) from tab_name 
二、IDS内部函数 
1、DBSERVERNAME 返回数据库服务器名 let tmp_char=DBSERVERNAME 
2、SITENAME 返回数据库服务器名 let tmp_char=SITENAME 
说明:两者功能相同;

3、DBINFO(‘SPECIAL_KEYWORD') 返回只关键字值 
例子1:返回数据中每个表的DBSPACE名称 
select dbinfo('dbspace',partnum),tabname from systables 
where tabid>99 and tabtype='T' (OK) 
例子2:返回任何表中插入的最后一个SERIAL值 
select dbinfo('sqlca.sqlerrd1') from systables where tabid = 1 
例子3:返回最后一个SELECT,INSERT,UPDATE,DELETE或EXECUTE PROCEDURE语句处理的行数; 
select dbinfo('sqlca.sqlerrd2') from systables where tabid=1;

三、其它 
本函ex^?灿

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/21142869/viewspace-1116339/,如需转载,请注明出处,否则将追究法律责任。

上一篇: 没有了~
下一篇: 没有了~
请登录后发表评论 登录
全部评论

注册时间:2009-03-18

  • 博文量
    1
  • 访问量
    723