您的位置:首页 > 数据库 > Oracle

Oracle的Sql语句一些知识点(2)

2017-08-14 16:52 169 查看
接上一节继续:

1.instr(a,b) 在a中找b 找到就返回b所在的位置

2.lpad(字符串,总位数,填充的字符) 将 字符串在左边填充至总位数,用填充字符填充

rpad(字符串,总位数,填充的字符) 将 字符串在右边填充至总位数,用填充字符填充

3.trim()删除字符串两边的空格。

ltrim()删除字符串左边的空格。

rtrim()删除字符串右边的空格。

trim(‘字符1’ from ‘字符串2’) 分别从字符2串的两边开始,删除指定的字符1。

trim([leading | trailing | both] trim_char from string) 从字符串String中删除指定的字符trim_char。

leading:从字符串的头开始删除。

trailing:从字符串的尾部开始删除。

both:从字符串的两边删除。

4.replace(字符串,被替换的字符,替换字符) 替换字符串

数值函数

5.round(小数,保留位数) 四舍五入



6.trunc(小数,截取几位) 切去小数点最后面的



7.round(时间,’年/月’) 按照过月一半 过年一半 来进行四舍五入

Oracle的显示数据转换

1.to_char(date,String pattern) 将日期格式转换成字符串 返回值是String

2.to_date(String,String pattern) 将字符串转换成日期

3.to_number将字符转换成数字

通用函数:

1.nvl(expr1,expr2)

2.nvl2(expr1,expr2,expr3) expr1=null 为3 否则为2

3.nullif(expr1,expr2) 1=2 则为null 否则返回1

4.coalesce(expr1,expr2,expr3,……..) 从左往右找到第一个不为空的值

分组函数(多行函数)

max()

min()

count()

avg()

这里有一条原则:

select a ,b,count(c) from table group by a,b

子查询所要解决的问题:不能一步求解。

子查询注意的几点

1.()

2.出现的位置:select where having from 之后

3.select a,b,c,(子查询) 此子查询只能是单行查询(返回一条数据)

集合的运算

union A集合和B集合的并集 A U B 不包含重复数据。

union all A集合和B集合的并集 A U B 包含重复数据。

intersect A集合和B集合的交集集 A n B

minus A集合和B集合的差集 A - B
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: