Oracle Cross Join交叉连接 语法

CROSS JOIN 指定第一个表的所有行与第二个表的所有行连接。如果 table1 中有“x”行,table2 中有“y”行,则交叉连接结果集有 x*y 行。当没有指定匹配的连接列时,通常会发生这种情况。

简单来说,可以说如果连接查询中的两个表没有连接条件,那么 Oracle 将返回它们的笛卡尔积。

语法:

SELECT * FROM table1
CROSS JOIN table2;
或者:
SELECT * FROM table1, table2

lag与lead函数

lag与lead函数是跟偏移量相关的两个分析函数,通过这两个函数可以在一次查询中取出同一字段的前N行的数据(lag)和后N行的数据(lead)作为独立的列,从而更方便地进行进行数据过滤

lead(field, num, defaultvalue) field需要查找的字段

num往后查找的num行的数据,defaultvalue没有符合条件的默认值

lag(field, num, defaultvalue)与lead(field, num, defaultvalue)刚好相反

是往前查找num行的数据。

lead(value_expr [,offset][,default]) over([query_partition_clause] order by Order_by_clause)

参数说明:

value_expr 值表达式,通常是字段,也可是是表达式。value_expr本身不支持分析函数,也就是lead不支持多层调用

offset 偏移,应该是很熟悉的数学概念了,或者是相对偏移,表格来开当前行的第offset行,如果offset是整数就表示是顺序下的前第n行,如果是负数就是往后第n行。 如果不提供这个参数,就是默认为1.

default 默认值,如果没有找到,应该返回什么值的意思,有点类似nvl(col,value)。如果没有设置,且找不到,那么就返回Null

over 理解成在一个结果集范围内,如果后面的partition by为空,那么就是当前的结果集范围内。

query_partition_clause 分区语句,对结果集合分区的语句,是可选的,如果没有就是所有的一个分区。

Order_by_clause 排序语句 必须需要 ,形如order by xxx desc/asc

--交换每两个连续的学生的座位号。如果学生的数量是奇数,则最后一个学生的id不交换
首先使用decode判断当前行id是奇数还是偶数,
如果是奇数用lead函数往下一行偏移查数据,
如果是偶数用lag函数往上一行偏移查数据。
lead(field, num, defaultvalue) field需要查找的字段
num往后查找的num行的数据,defaultvalue没有符合条件的默认值。
lag(field, num, defaultvalue)与lead(field, num, defaultvalue)刚好相反
是往前查找num行的数据。
select id,
decode(mod(id,2), 1, lead(student, 1, student) over(order by id), lag(student, 1) over(order by id)) as student
from seat

【笔记】Cross Join&lag与lead函数的更多相关文章

  1. ORACLE lag()与lead() 函数

    一.简介 lag与lead函数是跟偏移量相关的两个分析函数,通过这两个函数可以在一次查询中取出同一字段的前N行的数据(lag)和后N行的数据(lead)作为独立的列,从而更方便地进行进行数据过滤.这种 ...

  2. KingbaseES lag 和 lead 函数

    1.简介 lag与lead函数是跟偏移量相关的两个分析函数,通过这两个函数可以在一次查询中取出同一字段的前N行的数据(lag)和后N行的数据(lead)作为独立的列,从而更方便地进行进行数据过滤. 2 ...

  3. pandas实现hive的lag和lead函数 以及 first_value和last_value函数

    lag和lead VS shift 该函数的格式如下: 第一个参数为列名, 第二个参数为往上第n行(可选,默认为1), 第三个参数为默认值(当往上第n行为NULL时候,取默认值,如不指定,则为NULL ...

  4. oralce的lag和lead函数

    https://www.cnblogs.com/always-online/p/5010185.html

  5. oracle lag与lead分析函数简介

    lag与lead函数是跟偏移量相关的两个分析函数,通过这两个函数我们可以取到当前行列的偏移N行列的值 lag可以看着是正的向上的偏移 lead可以认为负的向下的偏移 具体我们来看几个例子: 我们先看下 ...

  6. oracle listagg函数、lag函数、lead函数 实例

    Oracle大师Thomas Kyte在他的经典著作中,反复强调过一个实现需求方案选取顺序: “如果你可以使用一句SQL解决的需求,就使用一句SQL:如果不可以,就考虑PL/SQL是否可以:如果PL/ ...

  7. lead 函数和 lag函数

    这两个函数的作用只能通过例子来解释,否则说不明白. 首先创建一个表 SQL> create table test (id number, name varchar2(8), val number ...

  8. Oracle-分析函数之取上下行数据lag()和lead()

    这两个函数是偏移量函数,可以查出一个字段的上一个值或者下一个值,配合over来使用. lead函数,这个函数是向上偏移. lag函数是向下偏移一位. 语法 [语法] lag(EXPR,<OFFS ...

  9. Hive分析窗体函数之LAG,LEAD,FIRST_VALUE和LAST_VALUE

    环境信息:Hive版本号为apache-hive-0.14.0-binHadoop版本号为hadoop-2.6.0Tez版本号为tez-0.7.0 创建表: ),第三个參数为默认值(当往上第n行为NU ...

  10. SQL LEAD()函数 LAG()函数

    lag ,lead 分别是向前,向后:lag 和lead 有三个参数,第一个参数是列名,第二个参数是偏移的offset,第三个参数是 超出记录窗口时的默认值) SQL> select id,na ...

随机推荐

  1. 在运行程序是出现sh: 行 1: cls: 未找到命令

    在运行程序是出现sh: 行 1: cls: 未找到命令 原因是system("cls");--这是在程序中调用系统命令,但是linux识别不了.功能是清除当前的终端显示数据.找到l ...

  2. 获取Android设备系统apk

    前提条件是:电脑adb连接Android设备 打开命令好窗口,输入指令adb shell "dumpsys window|grep mCurrentFocus" 输入指令adb s ...

  3. 云游长江大桥,3DCAT实时云渲染助力打造沉浸化数字文旅平台

    南京长江大桥是中国第一座自主设计建造的双层公路铁路桥,也是世界上最早的双层公路铁路桥之一.它不仅是一座桥梁,更是一座历史文化的见证者和传承者.它见证了中国人民的智慧和奋斗,承载了中国社会的变迁和发展. ...

  4. Linux快速入门(五)Linux系统管理

    top top命令相当于任务管理器.在top命令中,可以使用M,将进程列表按内存使用排序,使用P将进程列表按照CPU的使用情况排序,输入q退出. (1)第一行是任务队列信息,显示系统时间.运行时间.当 ...

  5. L7结合Turf.js实现空间分析与数据可视化

    1. 概述 AntV L7 是蚂蚁集团 AntV 数据可视化团队推出的基于 WebGL 的开源大规模地理空间数据可视分析引擎,其特点是通过简单的代码进行配置,即可在前端网页中绘制精美的地图以及相关的图 ...

  6. C++ Concurrency in Action 读书笔记一:thread的管理

    为避免混淆,用thread表示std::thread及其对象实例,用线程表示操作系统概念下的线程 Chapter 2 thread的管理 2.1 thread的创建(构造函数) a. 默认构造函数 d ...

  7. [MAUI]模仿哔哩哔哩的一键三连

    @ 目录 创建弧形进度条 绘制弧 准备物料 创建气泡 创建手势 创建交互与动效 项目地址 哔哩哔哩(Bilibili)中用户可以通过长按点赞键同时完成点赞.投币.收藏对UP主表示支持,后UP主多用&q ...

  8. springboot整合视频点播

    1 //上传视频到阿里云 2 @Override 3 public String uploadAyl(MultipartFile file) { 4 try { 5 //accessKeyId,acc ...

  9. 工具推荐-sourcetree

    工具推荐-sourcetree 简介 简单好用的win系统下的git可视化软件 支持ssh免密登录 一键暂存和上传到开源仓库 开源免费 安装 下载sourcetree sourcetree下载 下载g ...

  10. KingbaseES Collate排序规则对结果集的影响

    背景 前端在客户现场遇到一个问题,模糊查询报错:error:invalid multibyte charactor for locale pg the server LC_TYPE locale is ...