sql 数组三 展平数组
展平数组
如需将 ARRAY 转换为一组行(即执行展平操作),请使用 UNNEST 运算符。UNNEST 获取一个 ARRAY,然后返回一个表,ARRAY 中的每个元素均占该表的一行。
由于 UNNEST 破坏了 ARRAY 元素的顺序,您可能需要恢复表中的顺序。为此,请使用可选的 WITH OFFSET 子句返回另一个包含各数组元素偏移量的列,然后使用 ORDER BY 子句按偏移量对行进行排序。
示例
SELECT *
FROM UNNEST(['foo', 'bar', 'baz', 'qux', 'corge', 'garply', 'waldo', 'fred'])AS element
WITH OFFSET AS offset
ORDER BY offset;+----------+--------+
| element | offset |
+----------+--------+
| foo | 0 |
| bar | 1 |
| baz | 2 |
| qux | 3 |
| corge | 4 |
| garply | 5 |
| waldo | 6 |
| fred | 7 |
+----------+--------+
请注意,对于相关交叉联接,UNNEST 运算符为可选运算符,CROSS JOIN 可表示为逗号联接。上述示例使用此简写表示法后变为:
WITH sequences AS(SELECT 1 AS id, [0, 1, 1, 2, 3, 5] AS some_numbersUNION ALL SELECT 2 AS id, [2, 4, 8, 16, 32] AS some_numbersUNION ALL SELECT 3 AS id, [5, 10] AS some_numbers)
SELECT id, flattened_numbers
FROM sequences, sequences.some_numbers AS flattened_numbers;+------+-------------------+
| id | flattened_numbers |
+------+-------------------+
| 1 | 0 |
| 1 | 1 |
| 1 | 1 |
| 1 | 2 |
| 1 | 3 |
| 1 | 5 |
| 2 | 2 |
| 2 | 4 |
| 2 | 8 |
| 2 | 16 |
| 2 | 32 |
| 3 | 5 |
| 3 | 10 |
+------+-------------------+
sql 数组三 展平数组相关推荐
- js算法数组flat展平的几种方法
数组的展平,主要是指的是数组嵌套数组转为一维数组,总结了一下几种方法 es6原生的方法 链接: es6中的flat let arr = [1, 2, [3, 4]].flat() console.lo ...
- 展平数组(flatten、ravel)--numpy
1. flatten()函数 1.1 函数功能 返回将输入数组展平成一维的副本数组,生成的新数组是原数组的深层拷贝(copy),两个数组相互独立,对新数组的修改不会影响原数组 1.2 函数语法 nda ...
- java操作数组(一维数组、二维数组的声明和遍历)
java操作数组(一维数组.二维数组的声明和遍历) 1.一维数组 三种声明数组的方法和四种遍历数组的方法 public static void main(String[] args) {//静态初始化 ...
- Python计算两个numpy数组的交集(Intersection)实战:两个输入数组的交集并排序、获取交集元素及其索引、如果输入数组不是一维的,它们将被展平(flatten),然后计算交集
Python计算两个numpy数组的交集(Intersection)实战:两个输入数组的交集并排序.获取交集元素及其索引.如果输入数组不是一维的,它们将被展平(flatten),然后计算交集 目录
- Flatten Nested Arrays(展平嵌套数组)
这个题目是在一个公司现场面谈的时候的一个题目.虽然对这种找工作上来就做题目的现象比较反感. 但是大环境如此,也只能被蹂躏了. 中文描述 题目要求比较简单:[1,2,[3],[[4]],5,6] -&g ...
- 《Python数据分析基础教程:NumPy学习指南(第2版)》笔记6:第三章 常用函数2——中位数、方差、日期、展平
本章将介绍NumPy的常用函数.具体来说,我们将以分析历史股价为例,介绍怎样从文件中载入数据,以及怎样使用NumPy的基本数学和统计分析函数.这里还将学习读写文件的方法,并尝试函数式编程和NumPy线 ...
- 剑指offer 面试题三 找出数组中重复的数字
1 import org.junit.Test; 2 3 import java.util.Arrays; 4 import java.util.HashSet; 5 6 public class D ...
- map的key可以试一个数组吗?_【自考】数据结构第三章,数组,期末不挂科指南,第5篇...
数组 概念如下 数组可以看成线性表的一种推广,其实就是一种线性表,一维数组又称为向量 数据由一组具有相同类型的数据元素组成,并存储在一组连续的存储单元中 若一维数组中的数据元素又是一维数组结构,则 ...
- 第三章 Matlab数组
第三章 Matlab数组 一维数组 一维数组的创建 一维数组中元素的提取 二维数组 二维数组的创建 二维数组中元素的提取 字符数组 字符数组的创建 字符数组的拼接 字符数组的显示 空数组 一维数组 一 ...
最新文章
- Enlightenment E19 将完整支持 Wayland
- Drug Target Review | 虚拟现实(VR)用于新药设计
- Hibernate Validation与Spring整合各注解的用法Demo
- mybatis框架入门程序:演示通过mybatis实现数据库的插入操作中实现返回结果的获取...
- Note cancel request的实现原理
- Qt connect()的第五种重载[=](){}
- 如何在分屏浏览中并排使用两个Mac软件界面
- windows桌面动态主题_如何在Windows 10上安装桌面主题
- RocketMQ 监控平台搭建与项目引入
- 一年级abb式词语并造句_一年级abb式词语并造句_一年级语文下册总复习
- 多重阴影的设置、鼠标激活时、相邻选择器的简介、display
- Unity3D Webplayer Socket网络通信经验分享
- 最新版CameraX入门(拍照、存储展示、切换前后摄像头、手电筒、闪光灯、手势伸缩、双击放大缩小)
- 服务器老被攻击?如何避免服务器被恶意攻击?
- SLF4J的高级写法
- 花花世界迷人眼,没有实力别赛脸,做Python实力派(万字精华,初学者,收藏必备!!!)
- 时间字符串和时间戳的转换
- 4个方面,系统总结个性化推荐系统
- 锐捷交换机配置MSTP以及VRRP
- python:线性回归分析实战案例
热门文章
- Winform开发框架里面使用事务操作的原理及介绍
- Clonezilla制作镜像时报错:extfsclone.c:bitmap free count err解决办法
- virtualbox vboxmanage命令
- javascript之作用域
- 批量部署OFFICE2013
- [Android1.5]DigitalClock自定义日期输出格式
- 边缘会话控制器SBC
- IDEA中报错spring-boot-maven-plugin:not found
- 点击链接微信html代码怎么写,html5微信分享代码怎么写呢?
- html中隔行的代码,js+css 控制表格隔行变色与单行高亮的代码