Oracle学习总结

1.所有查询出来的表格都重复显示很多标题行,针对其优化:

  • 设置每行显示的数据长度:set linesize 300
  • 设置每次显示的行数:set pagesize 30

格式化的操作没有意义,只是针对于数据库直接操作进行。针对一个列进行格式化:col 列 for a数字;

2.简单查询只能控制数据列,但是它无法进行数据行的控制,想对所选择的数据行进行控制用where子句。

3.null从数据库定义上来讲属于一个位置的数据,在任何情况下,任何一个数字与null进行计算,结果还是未知(null)。

4.字符串函数:

  • 转大写函数:字符串 upper(数据列|字符串数据)
  • 转小写函数:字符串lower(列|字符串)

在一些严格的操作环境下,对于不区分大小写的操作基本上一2种做法:

  1. 数据保存时,将数据统一变为大写或小写字母,查询时可以直接用函数处理
  2. 数据保存时将所有数据按照原始方法保存,查询时将每个数据种的字母都变为大写形式(但是性能相对差)
  • 首字母大写:字符串 initcap(列 | 数据):除了首字母大写外,其余都是小写。
  • 计算字符串的长度:length(列 | 字符换数据)

所有单行函数可以在sql语句的任意位置上出现

  • 字符串替换,使用指定的内容替换掉原始字符串中的数据:replace(列 | 数据,要查找内容,新的内容),利用replace可以消除掉字符串中全部空格数据
  • 字符串截取:substr(列 | 数据,开始点)从指定的开始点一致截取到结尾;substr(列 | 数据,开始点,长度)截取指定范围的字符串

对于substr函数,它的下标从1开始,即使设置的是0,那么也会按照1来处理

5.数值函数:针对数字进行处理的

  • 四舍五入函数:round(列 | 数字,[保留小数位]),如果不设置保留小数位表示不保留

round(78915.678):78916;round(78915.67822,2):78915.68;round(78915.67822,-2):78900(把不足5的数据取消);round(78985.6782,-2):79000(超过5的需要进位);round(-15.35):-15;round(-15.65):-16

  • 截取小数,所有小数都不进位:trunc(列 | 数字 [小数位])

trunc(78915.67823823):78915;trunc(78915.67823823,2):78915.67;trunc(78915.67823823,-2):78900;trunc(78985.67823823):78900;trunc(-15.65):-15

  • 求余数:mod(列1 | 数字1,列2|数字2)

posted on 2018-08-06 19:15  逛吃小火车  阅读(102)  评论(0编辑  收藏  举报

导航