Oracle有哪些常用函数?

Oracle有哪些常用函数?


ITMISS
浏览 676回答 1
1回答

白衣染霜花

Oracle常用函数:1、Substr 截取函数Select productid 产品编号,substr(productid,1,6) as 截取后的编号 from 表名 //查询产品编号从第一位开始的后6位2、Distinct 去除重复函数Select distinct(productid) 产品编号 from 表名 //查询产品编号去除重复的编号3、Order By 排序函数 asc(默认) desc 默认null 最大 。。。。。。order by 列名 asc (desc) nulls first 可以将null 放在首位4、Null 查询时 不能使用”=” 而用 is null 或 is not null 。。。。。。where price is null (is not null)5、Group by 他不属于where 语句 故位置不固定 他不能用在where函数中 Select avg(price) from 表名 group by 类型,厂家6、Having 一般与group by 公用的限制语句 他不与单个值有关而是与组有关Select category, avg(productprice) 产品价格 from product group by category having avg(productprice)>20007、Inner join……on 内连接语句Select p.productname, p.productprice, c.categoryid from productinfo p , cageoryinfo c where p.category = c.categoryid 等价于Select p.productname, p.productprice, c.categoryid from productinfo p inner join cageoryinfo c on p.category = c.categoryid8、Abs 取绝对值的函数 Select Asb(-100) from dual9、mod 取余函数Select mod(10,6) from dual 值为4 若b为0 返回A A b10 、sign 返回数的符号 正为1 0为0 负为-1Select sign(‘9’),sign(-9),sign(10),sign(0.00) from dual 返回为1,-1,1,011、cell(n) 返回>=n的最小整数 要求n必须是十进制的数Floor(n) 返回<=n的最大整数 要求n 必须是十进制的数12、sort(n) 返回n的平方根 当n小于0是返回nan Power(n1,n2) 返回 n1的n2次幂 Exp(n) 返回e的n次幂Log(n1,n2) 返回以n1为底n2的对数 n1不为0,1 Ln(n) 返回n的自然对数 n不为 0,113、round(n,interger) 四舍五入n的interger位 若interger为正保留小数点后interger位四舍五入,若interger为负向小数点前数interger位四舍五入 如round(155,-2) 结果为200 。Trunc(n,interger) 截取n的interger位 若interger为正向小数点后截取interger位,若interger为负向小数点前截取interger为 如 trunk(155,-2) 结果为10014、ASCII(char)返回参数首字母的ASCII码值15、lengtch(char) 返回字符串char 的长度16、 substr(‘给定的字符串’,A,B) A表示从第几位开始截 B表示截几位,如果A为负值 从右边数到A位开始向后截B位17、connect(char1,char2)连接字符串 把char1和char2连接起来 connect(‘我的’,‘测试’)等价于‘我的’||‘测试’18、cast 数据类型转换函数Select cast(’123’ as interger),cast(123 as varchar2(8)) from dual 结果为123 12319、chartorowid 函数 将 char类型转换为ROWID 类型 但是最后长度必须满足rowid的标准18位Rowidtochar 函数 将rowid 类型转换为char 因为rowid长度为18,故转换成的字符串也是18位。20、to_char(number) 将数字类型转换成字符类型 To_char(data) 将日期转换成字符型21、lnnvl (条件) 排除条件得到指定条件之外的函数Select *from productinfo where lnnvl(quantity>=70) 获得quantity小于70的数据22、nvl(expr1,expr2) 如果expr1为null 则返回expr2 否则返回expr1 替换时常用 Select productname,nvl(quantity,0) from productinfo 表示若quantity为NULL返回0否则返回quantity的值Nvl2(expr1,expr2,expr3) 意思一样当expr1为空返回expr3,不为空返回expr2
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Oracle