支持的sql语法_PostgreSQL 12 新特性解读之一|支持 SQL/JSON path
作者介绍
谭峰,网名francs,《PostgreSQL实战》作者之一,《PostgreSQL 9 Administration Cookbook》译者之一,PostgreSQL 中文社区委员,致力于PostgreSQL技术分享,博客 https://postgres.fun
PostgreSQL 之前版本已支持 Json 和 Jsonb 数据类型,支持非关系数据的存储和检索,如果 Json 数据较复杂(层级多、嵌套json、包含数组等 ),之前版本不能方便的检索 Json 数据元素值。
PostgreSQL 12 版本的一个重量级特性是新增 SQL/JSON path 特性,支持基于 Json 元素的复杂查询,文档上关于 SQL/JSON path 内容很丰富,本文仅演示简单的用例。
发行说明
Add support for the SQL/JSON path language (Nikita Glukhov, Teodor Sigaev, Alexander Korotkov, Oleg Bartunov, Liudmila Mantrova)
This allows execution of complex queries on JSON values using an SQL-standard language.
SQL/JSON Path Expressions 语法
SQL/JSON path 特性的核心是定义函数表达式,其实现方式是使用了 jsonpath 数据类型,jsonpath 以二进制格式展现 SQL/JSON 函数表达式。
SQL/JSON path 函数表达式使用了 JavaScript 的一些语法,如下:
l 点号 . 表示引用 Json 数据的元素
l 方括号 [] 表示引用数组元素
l Json 数据中的数组元素下标从0开始
SQL/JSON path 函数表达式的变量,如下:
l $ 符号表示要查询的Json文本的变量
l $varname 表示指定变量
l @ 指在 filter 表达式中表示当前路径元素的变量
SQL/JSON Path Expressions 基本演示
为了方便演示,创建以下测试表并插入一条 Json 测试数据,如下:
CREATE TABLE t_track ( a jsonb);INSERT INTO t_track (a) VALUES ('{ "gpsname": "gps1
支持的sql语法_PostgreSQL 12 新特性解读之一|支持 SQL/JSON path相关推荐
- sql 截取json数据_PostgreSQL 12 新特性解读之一|支持 SQL/JSON path
作者介绍 谭峰,网名francs,<PostgreSQL实战>作者之一,<PostgreSQL 9 Administration Cookbook>译者之一,PostgreSQ ...
- Java 12正式发布,新特性解读!
Java 12 如约而至,除了那些值得关注的特性,你也应该思考下 Java 的未来. 在 Java 9 之前,当一个版本被宣布为首选版本,存在一个"培育"(bedded-in)新 ...
- atitit.Oracle 9 10 11 12新特性attilax总结
atitit.Oracle 9 10 11 12新特性 1. ORACLE 11G新特性 1 1.1. oracle11G新特性 1 1.2. 审计 1 1.3. 1. 审计简介 1 1.4. ...
- 十分钟接入iOS 12新特性——Siri Shortcuts
前言 Xcode 10已经正式发布,开发者可以接入Siri Shortcuts的iOS 12新特性. WWDC2018的Introduction to Siri Shortcuts Session介绍 ...
- Java 12 新特性与功能
Java 12 新特性与功能 Java 12是Java SE的第12个版本,于2019年3月19日发布.Java 12的发布背景主要是为了帮助开发人员更加高效的进行编程工作,提高Java的性能和稳定性 ...
- 谷歌手机升级android10,Android Q安卓10.0新特性,首批支持升级21款手机
原标题:Android Q安卓10.0新特性,首批支持升级21款手机 2019年5月8日,一年一度的谷歌I/O开发者大会在美国加州如期召开,并发布了全新系列Android Q(安卓10.0)操作系统, ...
- SQL Server 2008 R2 新特性之一
2008年8月6日,微软发布了SQL Server 2008正式版,时至今日,大部分企业还在使用SQL Server 2000和2005. SQL Server 2008 中还是增加了不少新特性的 , ...
- 新特性解读 | MySQL 8.0 对 limit 的优化
作者:杨奇龙 网名"北在南方",资深 DBA,主要负责数据库架构设计和运维平台开发工作,擅长数据库性能调优.故障诊断. 本文来源:原创投稿 *爱可生开源社区出品,原创内容未经授权不 ...
- Java 11 正式发布,新特性解读
Java 11 正式发布,新特性解读 杨晓峰 2018 年 9 月 26 日 话题:Java语言 & 开发 不知不觉 JDK 11 已经发布了,从 9 开始,JDK 进入了让人学不动的更新 ...
最新文章
- kaldi 源码分析(十) - gmm-init-mono.c分析
- 怎么快速学好php,学习编程的快速高效方法
- JS打印页面指定区域
- WPF界面设计技巧(3)—实现不规则动画按钮
- 图像二值形态学——腐蚀和膨胀的C语言实现
- 记一次validator jar冲突导致的启动异常
- 七牛上传图片html,使用七牛云上传图片
- TEA加密算法的C/C++实现
- c++基础(part1)--cpp简介
- 价值50万年薪的Java面试题
- React Native (一) react-native-video实现音乐播放器和进度条的功能
- iOS已发布应用中对异常信息捕获和处理(转)
- 基于vlmcsd搭建KMS服务器
- python下载哪个好_tensorflow用python哪个版本更好?
- Control Groups (Cgroups)-详解
- STM32CubeMX5.6.1生成的代码无启动文件
- 上帝给我们大龄程序员的出路,就在这!(附:现状分析)
- 建行找不到服务器或DNS错误,企业网上银行常见问题解答
- PHP 使用parse_ini_file读取文本文档遇到中文乱码问题
- kerberos认证相关概念和流程