oracle常用函数学习
1.length 返回字符串的长度;SQL> select length('name'),length('addr') addr_length, length(to_char('sal')) as sal_length from dual; gao.nchar_tst;2.LOWER 返回字符串,并将所有的字符小写3.UPPER 返回字符串,并将所有的字符大写4.RPAD和LPAD(粘贴字符)RPAD 在列的右边粘贴字符LPAD 在列的左边粘贴字符Lpad()函数的用法:lpad函数将左边的字符串填充一些特定的字符其语法格式如下:lpad(string,n,[pad_string])string:可是字符或者参数n:字符的长度,是返回的字符串的数量,如果这个数量比原字符串的长度要短,lpad函数将会把字符串截取成从左到右的n个字符;pad_string:是个可选参数,这个字符串是要粘贴到string的左边,如果这个参数未写,lpad函数将会在string的左边粘贴空格5.substr(string,start,count) 取子字符串,从start开始,取count个6.replace (string,s1,s2) string 希望被替换的字符或变量s1 被替换的字符串s2 要替换的字符串• 7.trim(s from string)trim一般都是用在删除字符串两边的空格。
实际上,trim也可以用来删除字符串两边的指定字符。
并且trim 指定删除的字符串只能是单个字符。
如 trim('字符1' from '字符串2') ,字符1只能是单个字符。
1. trim()删除字符串两边的空格。
6. tim()只能删除半角空格。
2. ltrim()删除字符串左边的空格。
3. rtrim()删除字符串右边的空格。
4. trim('字符1' from '字符串2') 分别从字符2串的两边开始,删除指定的字符1。
5. trim([leading | trailing | both] trim_char from string)从字符串String中删除指定的字符trim_char。
leading:从字符串的头开始删除。
trailing:从字符串的尾部开始删除。
borth:从字符串的两边删除。
8.ceil 返回大于或等于给出数字的最小整数9.floor 对给定的数字取整数• 10.to_date (string,format) 将字符串转化为ORACLE中的一个日期• 11.AVG(DISTINCT|ALL)all表示对所有的值求平均值,distinct只对不同的值求平均值61.MAX(DISTINCT|ALL)求最大值,ALL表示对所有的值求最大值,DISTINCT表示对不同的值求最大值,相同的只取一次62.MIN(DISTINCT|ALL)求最小值,ALL表示对所有的值求最小值,DISTINCT表示对不同的值求最小值,相同的只取一次12.GROUP BY 主要用来对一组数进行统计13.HAVING 对分组统计再加限制条件14.ORDER BY 用于对查询到的结果进行排序输出(默认升序ASC)15. pl/sql中的case语句case的第1种用法:case col when 'a' then 1when 'b' then 2else 0 end这种用法跟decode一样没什么区别Decode函数的使用:DECODE(条件,值1,翻译值1,值2,翻译值2,...值n,翻译值n,缺省值)case的第2种用法:case when score <60 then 'd'when score >=60 and score <70 then 'c'when score >=70 and score <80 then 'b'else 'a' end16.NVL(expr1, expr2)NVL(expr1, expr2)->expr1为NULL,返回expr2;不为NULL,返回expr1。
注意两者的类型要一致NVL2 (expr1, expr2, expr3) ->expr1不为NULL,返回expr2;为NULL,返回expr3。
expr2和expr3类型不同的话,expr3会转换为expr2的类型NULLIF (expr1, expr2) ->相等返回NULL,不等返回expr1• Oracle分析函数参考手册============================================= 作者: xsb([url])[/url]发表于:2006.03.01 12:22分类: DW&BI出处:/post/419/33028---------------------------------------------------------------Oracle从8.1.6开始提供分析函数,分析函数用于计算基于组的某种聚合值,它和聚合函数的不同之处是对于每个组返回多行,而聚合函数对于每个组只返回一行。
常用的分析函数如下所列:row_number() over(partition by ... order by ...)rank() over(partition by ... order by ...)dense_rank() over(partition by ... order by ...)count() over(partition by ... order by ...)max() over(partition by ... order by ...)min() over(partition by ... order by ...)sum() over(partition by ... order by ...)avg() over(partition by ... order by ...)first_value() over(partition by ... order by ...)last_value() over(partition by ... order by ...)lag() over(partition by ... order by ...)lead() over(partition by ... order by ...)下面例子中使用的表来自Oracle自带的HR用户下的表,如果没有安装该用户,可以在SYS用户下运行$ORACLE_HOME/demo/schema/human_resources/hr_main.sql来创建。
除本文内容外,你还可参考:ROLLUP与CUBE [url]/post/419/29159[/url]分析函数使用例子介绍:[url]/post/419/44634[/url]本文如果未指明,缺省是在HR用户下运行例子。
开窗函数的的理解:开窗函数指定了分析函数工作的数据窗口大小,这个数据窗口大小可能会随着行的变化而变化,举例如下:over(order by salary)按照salary排序进行累计,order by是个默认的开窗函数over(partition by deptno)按照部门分区over(order by salary range between 50 preceding and 150 following)每行对应的数据窗口是之前行幅度值不超过50,之后行幅度值不超过150over(order by salary rows between 50 preceding and 150 following)每行对应的数据窗口是之前50行,之后150行over(order by salary rows between unbounded preceding and unbounded following)每行对应的数据窗口是从第一行到最后一行,等效:over(order by salary range between unbounded preceding and unbounded following)主要参考资料:《expert one-on-one》Tom Kyte 《Oracle9i SQL Reference》第6章ohwww 2007-3-12 09:1970。
AVG功能描述:用于计算一个组和数据窗口内表达式的平均值。
SAMPLE:下面的例子中列c_mavg计算员工表中每个员工的平均薪水报告,该平均值由当前员工和与之具有相同经理的前一个和后一个三者的平均数得来;SELECT manager_id, last_name, hire_date, salary,AVG(salary) OVER (PARTITION BY manager_id ORDER BY hire_dateROWS BETWEEN 1 PRECEDING AND 1 FOLLOWING) AS c_mavgFROM employees;MANAGER_ID LAST_NAME HIRE_DATE SALARY C_MAVG---------- ------------------------- --------- ---------- ----------100 Kochhar 21-SEP-89 17000 17000100 De Haan 13-JAN-93 17000 15000100 Raphaely 07-DEC-94 11000 11966.6667100 Kaufling 01-MAY-95 7900 10633.3333100 Hartstein 17-FEB-96 13000 9633.33333100 Weiss 18-JUL-96 8000 11666.6667100 Russell 01-OCT-96 14000 11833.333371。
CORR功能描述:返回一对表达式的相关系数,它是如下的缩写:COVAR_POP(expr1,expr2)/STDDEV_POP(expr1)*STDDEV_POP(expr2))从统计上讲,相关性是变量之间关联的强度,变量之间的关联意味着在某种程度上一个变量的值可由其它的值进行预测。
通过返回一个-1~1之间的一个数, 相关系数给出了关联的强度,0表示不相关。
SAMPLE:下例返回1998年月销售收入和月单位销售的关系的累积系数(本例在SH用户下运行)SELECT t.calendar_month_number,CORR (SUM(s.amount_sold), SUM(s.quantity_sold))OVER (ORDER BY t.calendar_month_number) as CUM_CORRFROM sales s, times tWHERE s.time_id = t.time_id AND calendar_year = 1998GROUP BY t.calendar_month_numberORDER BY t.calendar_month_number;CALENDAR_MONTH_NUMBER CUM_CORR--------------------- ----------12 13 .9943093824 .8520408755 .8466522046 .8712506287 .9100298038 .9175563999 .92015435610 .8672025111 .84486476512 .90354266272。
ORACLE_分析函数大全
ORACLE_分析函数大全Oracle分析函数是一种高级SQL函数,它可以在查询中实现一系列复杂的分析操作。
这些函数可以帮助我们在数据库中执行各种数据分析和报表生成任务。
本文将介绍Oracle数据库中的一些常用分析函数。
1.ROW_NUMBER函数:该函数为查询结果中的每一行分配一个唯一的数字。
可以用它对结果进行排序或分组。
例如,可以使用ROW_NUMBER函数在结果集中为每个员工计算唯一的编号。
2.RANK和DENSE_RANK函数:这两个函数用于计算结果集中每个行的排名。
RANK函数返回相同值的行具有相同的排名,并且下一个排名值将被跳过。
DENSE_RANK函数类似,但是下一个排名值不会被跳过。
G和LEAD函数:LAG函数返回结果集中指定列的前一个(上一个)行的值,而LEAD函数返回后一个(下一个)行的值。
这些函数通常用于计算增长率或发现趋势。
4.FIRST和LAST函数:这两个函数用于返回结果集中分组的第一个和最后一个行的值。
可以与GROUPBY子句一起使用。
5.CUME_DIST函数:该函数用于计算给定值的累积分布。
它返回值的累积分布在结果集中的位置(百分比)。
6.PERCENT_RANK函数:该函数用于计算结果集中每个行的百分位数排名。
它返回值的百分位数排名(0到1之间的小数)。
7. NTILE函数:该函数用于将结果集分成指定数量的桶(Bucket),并为每个行分配一个桶号。
通常用于将数据分组为更小的块。
8.LISTAGG函数:该函数将指定列的值连接成一个字符串,并使用指定的分隔符分隔每个值。
可以用它将多个值合并在一起形成一个字符串。
9.AVG、SUM、COUNT和MAX/MIN函数:这些是常见的聚合函数,可以在分析函数中使用。
它们用于计算结果集中的平均值、总和、计数和最大/最小值。
以上只是Oracle数据库中的一些常用分析函数。
还有其他一些分析函数,如PERCENTILE_CONT、PERCENTILE_DISC等可以用于更高级的分析计算。
oracle常用函数
Oracle 常用SQL函数1、数值型常用函数1).ceil(n) 大于或等于数值n的最小整数select ceil(10.6) from dual; 112).floor(n) 小于等于数值n的最大整数select ceil(10.6) from dual; 103).mod(m,n) m除以n的余数,若n=0,则返回m select mod(7,5) from dual; 24).power(m,n) m的n次方select power(3,2) from dual; 95).round(n,m) 将n四舍五入,保留小数点后m位select round(1234.5678,2) from dual; 1234.576).sign(n) 若n=0,则返回0,否则,n>0,则返回1,n<0,则返回-1select sign(12) from dual; 17).sqrt(n) n的平方根select sqrt(25) from dual ; 52、常用字符函数1).initcap(char) 把每个字符串的第一个字符换成大写select initicap('mr.ecop') from dual; Mr.Ecop2).lower(char) 整个字符串换成小写select lower('MR.ecop') from dual; mr.ecop3).replace(char,str1,str2) 字符串中所有str1换成str2select replace('Scott','s','Boy') from dual; Boycott4).substr(char,m,n) 取出从m字符开始的n个字符的子串select substr('ABCDEF',2,2) from dual; CD5).length(char) 求字符串的长度select length('ACD') from dual; 36).|| 并置运算符select 'ABCD'||'EFGH' from dual; ABCDEFGH7).RPAD和LPAD(粘贴字符)RPAD 在列的右边粘贴字符LPAD 在列的左边粘贴字符SQL> select lpad(rpad(gao,10,*),17,*)from dual;LPAD(RPAD(GAO,1-----------------*******gao*******8).decodeselect decode(column1,null,'空',1,'壹',2,'贰',3,'叁','其他') from table19).case表达式.case表达式(1)SELECT first_name,last_name,job_id,salary,CASE job_idWHEN 'IT_PROG' THEN salary*2WHEN'ST_CLERK' THEN salary*1.2ELSE salary*1.1END AS new_salaryFROM employeesORDER BY job_id;.case表达式(2)SELECT first_name,last_name,job_id,salary,CASEWHEN job_id = 'IT_PROG' THEN salary*2WHEN job_id = 'ST_CLERK' THEN salary*1.2ELSE salary*1.1END AS new_salaryROM employeesORDER BY job_id;3、日期型函数sysdate 当前日期和时间select sysdate from dual;last_day 本月最后一天select last_day(sysdate) from dual;add_months(d,n) 当前日期d后推n个月select add_months(sysdate,2) from dual; months_between(d,n) 日期d和n相差月数select months_between(sysdate,to_date('20020812','YYYYMMDD')) from dual;next_day(d,day) d月后第一周指定day的日期select next_day(sysdate,'Monday') from dual;day 格式有'Monday' 星期一'Tuesday' 星期二'wednesday' 星期三'Thursday' 星期四'Friday' 星期五'Saturday' 星期六'Sunday' 星期日4、特殊格式的日期型函数Y或YY或YYY 年的最后一位,两位,三位select to_char(sysdate,'YYY') from dual;Q 季度,1-3月为第一季度select to_char(sysdate,'Q') from dual;MM 月份数select to_char(sysdate,'MM') from dual;RM 月份的罗马表示select to_char(sysdate,'RM') from dual; IVmonth 用9个字符表示的月份名select to_char(sysdate,'month') from dual;ww 当年第几周select to_char(sysdate,'ww') from dual;w 本月第几周select to_char(sysdate,'w') from dual;DDD 当年第几天,一月一日为001 ,二月一日032select to_char(sysdate,'DDD') from dual;DD 当月第几天select to_char(sysdate,'DD') from dual;D 周内第几天select to_char(sysdate,'D') from dual; 如sundayDY 周内第几天缩写select to_char(sysdate,'DY') from dual; 如sun hh12 12小时制小时数select to_char(sysdate,'hh12') from dual;hh24 24小时制小时数select to_char(sysdate,'hh24') from dual;Mi 分钟数select to_char(sysdate,'Mi') from dual;ss 秒数select to_char(sysdate,'ss') from dual;select to_char(sysdate,'YYYY-MM-DD HH:24:mi:ss') from dua;to_number() 将合法的数字字符串select to_number('88877') from dual; 88877 to_char() 将数字转换为字符串select to_char(88877) from dual; '88877'。
oracle数学函数
oracle数学函数Oracle数据库中提供了多种数学函数,用于处理数值数据。
这些函数可以用于执行各种计算,包括取整、四舍五入、求平方根、幂运算、三角函数等等。
以下将介绍一些常用的Oracle数学函数:1.ABS(x)函数:返回给定数值x的绝对值。
如ABS(-5)的结果为54.CEIL(x)函数:返回不小于给定数值x的最小整数。
如CEIL(3.6)的结果为45.FLOOR(x)函数:返回不大于给定数值x的最大整数。
如FLOOR(3.6)的结果为36.MOD(x,y)函数:返回给定数值x除以y的余数。
如MOD(10,3)的结果为17.POWER(x,y)函数:返回给定数值x的y次幂。
如POWER(2,3)的结果为88.SQRT(x)函数:返回给定数值x的平方根。
如SQRT(9)的结果为311.LOG(x,y)函数:返回给定数值x的以y为底的对数。
如LOG(100,10)的结果为212.SIN(x)函数:返回给定角度x的正弦值。
其中角度的单位为弧度。
如SIN(PI/2)的结果为113.COS(x)函数:返回给定角度x的余弦值。
其中角度的单位为弧度。
如COS(PI/3)的结果为0.514.TAN(x)函数:返回给定角度x的正切值。
其中角度的单位为弧度。
如TAN(PI/4)的结果为115.ASIN(x)函数:返回给定数值x的反正弦值(弧度)。
如ASIN(1)的结果为PI/216.ACOS(x)函数:返回给定数值x的反余弦值(弧度)。
如ACOS(0.5)的结果为PI/317.ATAN(x)函数:返回给定数值x的反正切值(弧度)。
如ATAN(1)的结果为PI/418.ATAN2(y,x)函数:返回给定直角坐标系中点(x,y)的极坐标系中点的角度值(弧度)。
如ATAN2(1,1)的结果为PI/4以上只是一些常用的Oracle数学函数,Oracle还提供了更多的数学函数,如指数函数、对数函数、双曲函数等等。
可以根据具体需求选择适合的函数进行数值计算。
oralce函数
oralce函数Oracle是一种关系数据库管理系统,它使用了一种名为Oracle数据库的数据库管理系统。
Oracle是一种强大的工具,提供了许多内置函数,可以用于在数据库中进行各种操作。
以下是一些常用的Oracle函数。
1.聚合函数-AVG:计算指定列的平均值。
-COUNT:计算指定列中非空数据的数量。
-SUM:计算指定列的总和。
-MAX:找到指定列的最大值。
-MIN:找到指定列的最小值。
2.字符串函数-CONCAT:将两个字符串连接成一个字符串。
-LOWER:将字符串转换为小写。
-UPPER:将字符串转换为大写。
-LENGTH:计算字符串的长度。
-SUBSTR:返回一个字符串的子字符串。
3.数值函数-ROUND:将一个数值四舍五入到指定的小数位数。
-CEIL:向上取整,返回不小于指定数值的最小整数。
-FLOOR:向下取整,返回不大于指定数值的最大整数。
-ABS:返回指定数值的绝对值。
-MOD:返回两个数值的余数。
4.日期和时间函数-SYSDATE:返回当前日期和时间。
-ADD_MONTHS:在指定日期上增加指定的月份。
-TRUNC:截断日期或时间到指定的精度。
-MONTHS_BETWEEN:计算两个日期之间的月数差。
-TO_CHAR:将日期转换为指定格式的字符串。
5.条件函数-DECODE:根据条件返回不同的值。
-CASE:根据条件执行不同的操作。
-NVL:如果给定的表达式为NULL,则将其替换为指定的值。
-NULLIF:如果两个表达式的值相等,则返回NULL。
6.分析函数-ROW_NUMBER:为每一行分配一个唯一的数字。
-RANK:为每一行分配一个排名,如果有并列的值,则排名相同。
-DENSE_RANK:为每一行分配一个排名,如果有并列的值,则排名可以重复。
-LEAD:返回指定行后的值。
-LAG:返回指定行前的值。
上述函数只是Oracle提供的一小部分功能,Oracle还提供了许多其他有用的函数。
oracle常用聚集函数
oracle常用聚集函数Oracle是数据库管理系统中的一种,支持众多的聚集函数,这些聚集函数能够按照特定规则将行组合为单个结果值。
以下是Oracle中比较常用的聚集函数。
1. AVG函数:用于计算数值列的平均值。
语法:AVG(column_name)2. COUNT函数:用于计算指定列中的行数。
可以使用COUNT(*)来计算表中的所有行数。
语法:COUNT(column_name)3. MAX函数:用于查找数值列中的最大值。
语法:MAX(column_name)4. MIN函数:用于查找数值列中的最小值。
语法:MIN(column_name)5. SUM函数:用于计算数值列的总和。
语法:SUM(column_name)其中,AVG、SUM、MAX和MIN等函数可以用于数字列,而COUNT也可以用于任何列(字符串、数字等)。
除了以上常用的聚集函数外,Oracle还支持其他聚集函数,如STDDEV、VARIANCE等。
STDDEV函数返回给定数列的标准差,VARIANCE函数返回给定数列的方差。
需要注意的是,在使用聚集函数时,必须指定分组条件。
使用GROUP BY关键字指定分组条件,以便使聚集函数仅作用于指定的数据子集上。
例如:SELECT department, AVG(salary)FROM employeesGROUP BY department;以上代码将返回每个部门的平均工资,因为使用了GROUP BY部门。
总之,Oracle中的聚集函数可以大大简化复杂查询的编写,帮助开发者更高效地进行数据分析和处理。
以上介绍的聚集函数是Oracle常用聚集函数中的一部分,也是开发者在使用Oracle进行数据查询时需要了解的重要知识点。
oracle 常用字符串函数
Oracle常用字符串函数详解字符串是在任何编程语言中都必不可少的数据类型之一。
Oracle数据库提供了一系列的字符串函数来处理和操作字符串数据。
本文将介绍Oracle常用的字符串函数,并详细解释它们的定义、用途和工作方式。
以下是我们将要讨论的函数:1.LENGTH2.SUBSTR3.INSTR4.CONCAT5.UPPER6.LOWER7.TRIM8.REPLACE9.TRANSLATE10.LPAD11.RPAD12.LTRIM13.RTRIM14.SOUNDEX1. LENGTHLENGTH函数用于获取字符串的长度,返回字符串中字符的个数。
它的语法如下:LENGTH(string)string参数是要获取长度的字符串。
返回值是一个整数,代表字符串的长度。
例如:SELECT LENGTH('Hello, World!') FROM dual;运行上述SQL语句后,将返回结果15,因为字符串中有15个字符。
2. SUBSTRSUBSTR函数用于提取字符串的子串。
它的语法如下:SUBSTR(string, start_position, [length])string参数是要提取子串的字符串,start_position参数是子串在字符串中的起始位置(起始位置从1开始),length参数是要提取的子串的长度。
如果省略length 参数,则将提取从start_position到字符串结尾的子串。
例如:SELECT SUBSTR('Hello, World!', 8) FROM dual;运行上述SQL语句后,将返回结果”World!“,因为从字符串的第8个字符开始提取子串。
3. INSTRINSTR函数用于查找子串在字符串中第一次出现的位置。
它的语法如下:INSTR(string, substring, [start_position, [occurrence]])string参数是要查找的字符串,substring参数是要定位的子串,start_position参数是在字符串中开始搜索的位置,默认为1,occurrence参数是要定位的子串在字符串中的第几次出现,默认为1。
oracle 时间比较函数
oracle 时间比较函数Oracle 时间比较函数Oracle数据库是一种关系型数据库管理系统,它支持SQL语言。
在Oracle数据库中,时间比较函数被广泛使用,用于比较和操作日期和时间数据。
这些函数提供了一种简便的方式来处理时间数据,并允许我们在查询中进行各种时间操作。
在Oracle数据库中,有多个时间比较函数可供使用。
下面将介绍其中一些常用的函数。
1. SYSDATE函数SYSDATE函数返回当前日期和时间。
它返回一个日期类型的值,可以用于比较、计算和显示当前日期和时间。
以下是SYSDATE函数的示例用法:SELECT SYSDATE FROM dual;2. TO_DATE函数TO_DATE函数用于将字符串转换为日期类型。
它接受两个参数,第一个参数是要转换的字符串,第二个参数是指定输入字符串的格式。
以下是TO_DATE函数的示例用法:SELECT TO_DATE('2022-01-01', 'YYYY-MM-DD') FROM dual;3. ADD_MONTHS函数ADD_MONTHS函数用于在给定日期上添加指定的月份。
它接受两个参数,第一个参数是要添加的日期,第二个参数是要添加的月份数。
以下是ADD_MONTHS函数的示例用法:SELECT ADD_MONTHS(SYSDATE, 3) FROM dual;4. MONTHS_BETWEEN函数MONTHS_BETWEEN函数用于计算两个日期之间的月份数。
它接受两个参数,第一个参数是较大的日期,第二个参数是较小的日期。
以下是MONTHS_BETWEEN函数的示例用法:SELECT MONTHS_BETWEEN(TO_DATE('2022-01-01', 'YYYY-MM-DD'), SYSDATE) FROM dual;5. NEXT_DAY函数NEXT_DAY函数用于找到给定日期之后的下一个指定的星期几。
Oracle常用的函数
函数:1、INITCAP(‘字符串’ )返回字符串并将第一个字母大写:select INITCAP('1test word TEST two')from dual;1test Word Test Two即首个字符是数字时,本单词不大写,后面的每个字符串分段,空格、下划线,都将大写第一个字母。
2、INSTR(‘字符串’,‘需要搜索字符’,起始位置,第几次出现)select instr('oracle traning','ra',1,2)from dual;93、LENGTH(‘字符串’)select length('test_name')from dual;94、LOWER(‘字符串’) UPPER(‘字符串’)将目标字符串全部大写或者小写返回select lower('Test_NAME_1NAME')FROM DUAL;test_name_1name5、RPAD() 和LPAD()在字符串左边或者右边粘贴字符,并返回定长字符select rpad(lpad('jason',12,'*'),15,'#')from dual;*******jason###6、TRIM()默认删除首位的空格,还有ltrim()和rtrim()select trim(' test_word and so on ')resultfrom dual;test_word and so onselect trim(trailing'o'from'test_word_andsoo')from dual;test_word_andsSELECT trim(leading'2'from'213dsq12')FROM dual;13dsq12SELECT trim(both'2'from'213dsq12')FROM dual;13dsq1select ltrim('test_name_and so on','ets')from dual;_name_and so on关键是第一个要删除的字符就得匹配,不然删除不了一个。
oracle常用sql函数
oracle常用sql函数Oracle是一款非常优秀的数据库管理系统,它提供了很多强大的功能与工具,其中最基本而实用的功能就是SQL函数了。
下面我们将重点介绍一些常用的Oracle SQL函数,帮助读者更好地了解和掌握这些常用的函数,从而更加有效地处理和管理数据。
一、数值型函数1. ABS()函数:用于计算数值的绝对值,比如ABS(-10)会返回10。
2. CEIL()函数:用于向上取整,比如CEIL(3.14)会返回4。
3. FLOOR()函数:用于向下取整,比如FLOOR(3.14)会返回3。
4. MOD()函数:用于求模,比如MOD(12,5)会返回2。
5. ROUND()函数:用于四舍五入,比如ROUND(3.49)会返回3,而ROUND(3.51)会返回4。
二、字符型函数1. CONCAT()函数:用于连接两个字符串,比如CONCAT('hello','world')会返回helloworld。
2. SUBSTR()函数:用于截取字符串,比如SUBSTR('hello',2,3)会返回ell。
3. UPPER()函数:用于将字符串转换成大写,比如UPPER('hello')会返回HELLO。
4. LOWER()函数:用于将字符串转换成小写,比如LOWER('HELLO')会返回hello。
5. TRIM()函数:用于去掉字符串首尾的空格,比如TRIM(' hello ')会返回hello。
三、日期型函数1. CURRENT_DATE函数:用于获取当前日期,比如SELECT CURRENT_DATE FROM DUAL会返回当前日期。
2. SYSDATE函数:用于获取系统当前时间,比如SELECTSYSDATE FROM DUAL会返回系统当前时间。
3. TO_CHAR()函数:用于将日期转换成字符型,比如TO_CHAR(SYSDATE,'yyyy-mm-dd')会返回当前日期的年月日格式。
(完整版)ORACLE函数大全
ORACLE函数大全SQL中的单记录函数1.ASCII返回与指定的字符对应的十进制数;SQL〉 select ascii('A')A,ascii(’a') a,ascii('0’) zero,ascii(' ') space from dual;A A ZERO SPACE————-——-— -—---———- ---—----- ---————-—65 97 48 322.CHR给出整数,返回对应的字符;SQL〉 select chr(54740) zhao,chr(65) chr65 from dual;ZH C—— -赵 A3.CONCAT连接两个字符串;SQL> select concat('010—’,'88888888')||'转23’高乾竞电话 from dual;高乾竞电话—-——-———-—--——-—010—88888888转234.INITCAP返回字符串并将字符串的第一个字母变为大写;SQL〉 select initcap('smith’) upp from dual;UPP—————Smith5.INSTR(C1,C2,I,J)在一个字符串中搜索指定的字符,返回发现指定的字符的位置;C1 被搜索的字符串C2 希望搜索的字符串I 搜索的开始位置,默认为1J 出现的位置,默认为1SQL> select instr(’oracle traning’,’ra',1,2) instring from dual;INSTRING—-—------96.LENGTH返回字符串的长度;SQL> select name,length(name),addr,length(addr),sal,length(to_char(sal)) from gao.nchar_tst;NAME LENGTH(NAME) ADDR LENGTH(ADDR) SALLENGTH(TO_CHAR(SAL))————-———---————-—- —--——---——----—- -———--—-—-—— ----———-————----—-——--—--—---高乾竞 3 北京市海锭区 6 9999.99 77。
