show user 查看当前用户
select * from tab; 查看当前数据库中的表
desc 表名 ; 查看表结构

between and 包含开头结尾

函数:

months_between(a,b) 两时间间隔月数 a大时间 b小时间
add_months(a,b) 添加月数,a时间 b月数数字
next_day(a,'星期一') 查看下一个星期一的时间 a 时间
last_day(a) 当前月份最后一天

to_char(sysdate,'YYYY-MM-DD') -- 2022-03-03
to_char(sysdate,'fmYYYY-MM-DD') -- 2022-3-3
to_char(11111,'99,999') -- 数字格式化成 111,111 9代表一位数字

to_number("10") 数值类型字符串 转数字
to_date(a,b) 时间字符串转时间

nvl(a,b) 空值处理 若a为空将替换成b
nvl2(a,b,c) 若a非空,返回b,否则返回c
decode(a,b,c,……,d) 相当与 if /else if /else, a为字段,bc成对 若a=b就返回c,所有成对的都不满足返回d
case when boolean then value1 when boolean then value2 else value3 end

min(a) a的最小值
max(a) a的最大值
avg(a) a的平均值
sum(a) a的求和
ceil(a) 大于或等于a的最小整数
floor(a) 小于或等于a的最大整数
mod(a,b) a除以b的余数
round(a,b) 四舍五入,a:值 b:需要保留的小数
trunc(a,b) 取整,a值 b需要保留的小数位,不进行四舍五入

lpad(a,b,c) 左补全 a为字段值,b为需要返回的字段长度,若b的值小于a的长度,返回值是a左侧截取b的长度,c是需要在左侧补全的字符,可缺省
rpad(a,b,c) 右补全, a为字段值,b为需要返回的字段长度,若b的值小于a的长度,返回值是a左侧截取b的长度,c是需要在右侧补全的字符,可缺省

length(a) a的长度
lower(a) 将a转成小写
upper(a) 将a转成大写

ltrim(a,b) 将a左侧的b截去,b缺省空格
rtrim(a,b) 将a右侧的b截去,b缺省空格
trim(a from b ) 将a左右两侧的b截去,b缺省空格
replace(a,b,c) 将a中的b替换成c
substr(a,b,c) 截取, a值 ,b开始位置,索引从1开始,0不截取,c需要截取的长度

select * from table1,table2 笛卡尔积
oracle查询语句执行顺序:
1.FROM 2. ON 3.JOIN 4.WHERE 5.GROUP BY 6.WITH CUBE or WITH ROLLUP 7.HAVING 8.SELECT 9.DISTINCT 10.ORDER BY 11.TOP

1、FROM 子句:执行顺序为从后往前、从右到左。数据量较少的表尽量放在后面。
2、WHERE子句:执行顺序为自下而上、从右到左。将能过滤掉最大数量记录的条件写在WHERE 子句的最右。
3、GROUP BY:执行顺序从左往右分组,最好在GROUP BY前使用WHERE将不需要的记录在GROUP BY之前过滤掉。
4、HAVING 子句:消耗资源。尽量避免使用,HAVING 会在检索出所有记录之后才对结果集进行过滤,需要排序等操作。
5、SELECT子句:少用*号,尽量取字段名称。ORACLE 在解析的过程中, 通过查询数据字典将*号依次转换成所有的列名, 消耗时间。
6、ORDER BY子句:执行顺序为从左到右排序,消耗资源。

inner join
left join
right join
full join 并集

Oracle 有事务回滚的 对增删改 需执行commit才会真正提交,rollback可以回滚commit之前的增删改
update 可以起到锁的作用,两条相同的update语句,只有前一条commit或rollback ,下一条才会执行
select * from table for update ,对同一表查询,只有commit或rollback ,下一条查询语句才会执行

最新文章

  1. CSS style和HTML style有什么区别?
  2. 使用JAVA编写电话薄程序,具备添加,查找,删除等功能
  3. 小白学习MVC5+EF6遇到的问题一
  4. IOS开发基础知识--碎片31
  5. 20款免费的 PSD 网站模板【免费下载】
  6. iOS 中实现功能引导页面
  7. laravel框架总结(三) -- 路径分析
  8. Matlab工具箱安装体会
  9. exit与return区别
  10. 一个简单的RTTI实现
  11. FilenameUtils工具类
  12. 仿网易邮箱5.0(四):信息提示插件(tips.js)
  13. SLA服务可用性怎么达到?
  14. jieba(杰巴)分词的三种模式
  15. laravel 自动加载 自定义的文件/辅助函数
  16. Java多线程消费者、生产者的基本思路
  17. linux的基本操作(磁盘管理)
  18. [js]js中变量带var和不带var的区别
  19. CopyOnWriteArrayList&Collections.synchronizedList()
  20. Jumpserver堡垒机

热门文章

  1. Python系统模块os.py和sys.py常用函数
  2. 技术前沿:ISP芯片终极进化——VP芯片(AI视觉处理器)
  3. 地址重写了,只是ip 没转发,应该是9999那个才对,rewrite /sbgl/(.*) http://127.0.0.1:9999/$1 permanent;,这样,
  4. 操作系统实战45讲笔记- 05 CPU工作模式:程序执行的三种模式
  5. Android MD5加密、RSA加密
  6. RepVGG:一个结构重参数化网络
  7. equals的用法的注意事项
  8. Devexpress WPF ChartControl 多Y轴
  9. [ARC140D] One to One
  10. docker介绍、安装及镜像管理