【Oracle】SQL笔记
与MySQL的区分
https://www.cnblogs.com/bailing80/p/11440927.html
获取当前系统时间
-- 查询当前系统时间,DUAL为一张临时表
SELECT SYSDATE FROM DUAL
获取时差
-- 7分钟前
SELECT SYSDATE, SYSDATE - INTERVAL '7' MINUTE FROM DUAL;
-- 7小时前
SELECT SYSDATE, SYSDATE - INTERVAL '7' HOUR FROM DUAL;
-- 7天前
SELECT SYSDATE, SYSDATE - INTERVAL '7' DAY FROM DUAL;
-- 7月前
SELECT SYSDATE, SYSDATE - INTERVAL '7' MONTH FROM DUAL;
-- 7年前
SELECT SYSDATE, SYSDATE - INTERVAL '7' YEAR FROM DUAL; -- 7分钟后
SELECT SYSDATE, SYSDATE + INTERVAL '7' MINUTE FROM DUAL;
-- 7小时后
SELECT SYSDATE, SYSDATE + INTERVAL '7' HOUR FROM DUAL;
-- 7天后
SELECT SYSDATE, SYSDATE + INTERVAL '7' DAY FROM DUAL;
-- 7月后
SELECT SYSDATE, SYSDATE + INTERVAL '7' MONTH FROM DUAL;
-- 7年后
SELECT SYSDATE, SYSDATE + INTERVAL '7' YEAR FROM DUAL;
字符模糊查询
-- ORACLE LIKE查询
SELECT * FROM 表名 WHERE INSTR(字段, '目标字符') > 0
分页查询样例:
SELECT * FROM
(
SELECT ROWNUM R, 别名A.*
FROM 表名 别名A
WHERE ROWNUM <= 当前页 * 每页记录数
) 别名B
WHERE 别名B.R > (当前页 - 1) * 每页记录数;
分页还需要排序处理
SELECT * FROM
(
SELECT ROWNUM RN,别名A.* FROM
(
SELECT -- 需要的字段
FROM 表名 -- 这里可以是多表
-- WHERE 筛选条件
ORDER BY 排序字段 [ASC, DESC]
) 别名A
WHERE ROWNUM < 当前页数 * 每页记录数
)
WHERE RN > (当前页数 - 1)* 每页记录数
递归查询:
https://www.cnblogs.com/Soprano/p/10659127.html
查询目标节点和所有下级
-- Oracle递归查询
SELECT *
FROM 表名
START WITH 字符字段名 ='条件值' -- (起始条件)
CONNECT BY PRIOR 主键字段名 = 父键字段名 -- 主键 等于 父建
查询目标节点和所有上级,就是把PRIOR条件倒过来
-- Oracle递归查询
SELECT *
FROM 表名
START WITH 字符字段名 ='条件值' -- (起始条件)
CONNECT BY PRIOR 父键字段名 = 主键字段名
【Oracle】SQL笔记的更多相关文章
- ORACLE SQL 笔记
根据数据权限查询 SELECT * FROM ( SELECT ROWNUM AS ROWNO, AA.* FROM ( SELECT DISTINCT A.OBJECTID InstanceID , ...
- Oracle学习笔记三 SQL命令
SQL简介 SQL 支持下列类别的命令: 1.数据定义语言(DDL) 2.数据操纵语言(DML) 3.事务控制语言(TCL) 4.数据控制语言(DCL)
- Oracle学习笔记之四,SQL语言入门
1. SQL语言概述 1.1 SQL语言特点 集合性,SQL可以的高层的数据结构上进行工作,工作时不是单条地处理记录,而对数据进行成组的处理. 统一性,操作任务主要包括:查询数据:插入.修改和删除数据 ...
- oracle学习笔记(十七) PL/SQL高级应用
PL/SQL高级应用 动态SQL 在PL/SQL中,不能直接执行DDL(create,alter,drop),得使用动态SQL,当然,除了DDL,动态SQL也可以执行DML(select,insert ...
- oracle sql 高级编程 历史笔记整理
20130909 周一 oracle sql 开发指南 第7章 高级查询 1.层次化查询select level,ttt.*,sys_connect_by_path(ttt.col1,',') fro ...
- SQL 笔记 By 华仔
-------------------------------------读书笔记------------------------------- 笔记1-徐 最常用的几种备份方法 笔记2-徐 收缩数据 ...
- ORACLE存储过程笔记3
ORACLE存储过程笔记3 流程控制 1.条件 if expression thenpl/sql or sqlend if; if expression thenpl/sql or sqlel ...
- ORACLE存储过程笔记1
ORACLE存储过程笔记1 一.基本语法(以及与informix的比较) create [or replace] procedure procedure_name (varible {IN|OUT ...
- oracle学习笔记第一天
oracle学习笔记第一天 --oracle学习的第一天 --一.几个基础的关键字 1.select select (挑选) 挑选出显示的--列--(可以多列,用“,”隔开,*表示所有列),为一条 ...
- Oracle SQL优化器简介
目录 一.Oracle的优化器 1.1 优化器简介 1.2 SQL执行过程 二.优化器优化方式 2.1 优化器的优化方式 2.2 基于规则的优化器 2.3 基于成本的优化器 三.优化器优化模式 3.1 ...
随机推荐
- RHCSA题目大纲
1.配置IP地址2.配置软件仓库3.调试SELinux4.创建用户账户5. 配置cron计划任务6.创建共享目录7.配置NTP时间客户端 "chronyd服务"8. auto自动 ...
- js随机数 比较运算符
// 生成一个随机数 1 - 100 范围内的随机数 // 大家先记住 JavaScript 生成随机数值的 公式 // 如果要 生成 a - b 范围内的数值 ...
- react兄弟之间通信
写入组件 import React, { Component } from 'react'//下面二个就是兄弟关系的组件 import Cmp1 from '../Child/Cmp1' import ...
- Nodejs 创建web服务 静态资源服务器 get数据获取 post数据获取
NodeJs是通过官方提供的http模块来创建 web服务器的模块.通过几行简单的代码,就能轻松的手写一个web服务,从而对外提供 web 服务. ² 创建web服务基本步骤 ①.导入http模块 c ...
- fs.1.10 ON rockylinux8 docker镜像制作
概述 freeswitch是一款简单好用的VOIP开源软交换平台. rockylinux docker上编译安装fs1.10版本的流程记录. 环境 docker engine:Version 24.0 ...
- 使用 JMX-Exporter 监控 Kafka 和 Zookeeper
JVM 默认会通过 JMX 的方式暴露基础指标,很多中间件也会通过 JMX 的方式暴露业务指标,比如 Kafka.Zookeeper.ActiveMQ.Cassandra.Spark.Tomcat.F ...
- java多线程编程:你真的了解线程中断吗?
java.lang.Thread类有一个 interrupt 方法,该方法直接对线程调用.当被interrupt的线程正在sleep或wait时,会抛出 InterruptedException 异常 ...
- vite+vue3+ts+elementPlus前端框架搭建 [三] router路由管理
路由包括动态路由.静态路由两种,本文中以静态路由的方式实现了动态路由. 1. 创建Router 在Src目录下创建router文件夹,并在router文件夹下创建index.ts文件. index.t ...
- 面试官:为什么重写equals方法必须要重新hashCode方法?
网络上解释的很全面但是很枯涩,也有些难懂,其实就是为了保证当该对象作为key时哈希表的检索效率.如HashMap的get方法是分两步获取的 第一步通过key的哈希值找到对应的哈希桶 第二步通过equa ...
- MYSQL8存储过程生成日历表以及异常处理
一.环境 数据库:mysql8.0.25 社区版 操作系统:windows 11 ------------------------------------ 二.创建日历表 CREATE TABLE ` ...