【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 ...
随机推荐
- JDBC的简单使用以及介绍
JDBC(Java DataBase Connectivity) Java 语言连接数据库 再本模块中,java提供里一组用于连接数据库的类和接口 Java 语言开发者,本身没有提供如何具体连接数据库 ...
- 解决:Maven PKIX path building failed: sun.security.provider.certpath
在构建SpringBoot项目时,maven下载依赖会报 PKIX path building failed: sun.security.provider.certpath的错误. 使用https:/ ...
- LeetCode 207. Course Schedule 课程表 (C++/Java)
题目: There are a total of n courses you have to take, labeled from 0 to n-1. Some courses may have pr ...
- 《Android开发卷——程序自动登录》
Android程序的自动登录功能 因为是公司的项目,所以这里不方便说出项目名称,这里就说我在做这个项目中用到的一些功能或者叫技术问题吧. 咱们经常用的Android程序中有一个情况,就是当你第一次注册 ...
- element-ui 合并行或列 table :span-method(行合并)
element-ui 官网案例:table合并行或列 element-ui官网中关于行合并的例子是根据行号进行合并的,这显然不符合我们日常开发需求,因为通常我们table中的数据都是动态生成的,所以需 ...
- 什么是JDBC,在上面时候会用到它?
JDBC的全称是Java DataBase Connection,也就是Java数据库连接,我们可以用它来操作关系型数据库.JDBC接口及相关类在java.sql包和javax.sql包里.我们可以用 ...
- es6.6.1 rest常规操作
ES 内置的REST接口/ 获取版本信息/index/_search 搜索指定索引下的数据 test/_search/_aliases 获取或者操作索引下的别名 _aliases/index/ 查看指 ...
- cuda性能优化-2.访存优化
简介 在CUDA程序中, 访存优化个人认为是最重要的优化项. 往往kernel会卡在数据传输而不是计算上, 为了最大限度利用GPU的计算能力, 我们需要根据GPU硬件架构对kernel访存进行合理的编 ...
- parsel的使用
介绍 parsel这个库可以解析HTML和XML,并支持使用XPath和CSS选择器对内容进行提取和修改,同时还融合了正则表达式的提取功能.parsel灵活强大,同时也是Python最流行的爬虫框架的 ...
- SpringBoot动态数据源配置
SpringBoot动态数据源配置 序:数据源动态切换流程图如下: 1:pom.xml文件依赖声明 <dependency> <groupId>org.springfram ...