写点什么

SQLite 3.9 支持 JSON、表达式索引及更多特性

  • 2015-10-28
  • 本文字数:892 字

    阅读完需:约 3 分钟

最近发布的 SQLite 3.9 提供了一些新特性和增强功能,包括支持 JSON 编解码、全文检索版本 5、表达式索引、同名虚表等等。

根据采用最新语义版本标准,SQLite 3.9 是一个通过引入新特性而打破兼容性同时又向下兼容旧版本的版本。SQLite 3.9 引入的新特性包括:

  • 支持 JSON,通过 json1扩展,实现了一套方法来验证 JSON 字符串、构建 JSON 数组和对象、操作 JSON 字符串(通过更新、插入和替换值)等。另外,有两个表值方法可以通过将每个 JSON 元素映射成行来将 JSON 字符串转换成虚表。
  • 索引表达式,补充了引用表列的传统索引,允许使用涉及多个列的表达式创建索引。这个特性将使得查询更有效率,例如,需要列出给定账户金额总数超过给定数目的所有操作:

CREATE INDEX account_change_magnitude ON account_change(acct_no, abs(amt)); SELECT * FROM account_change WHERE acct_no=$xyz AND abs(amt)>=10000;5. 同名虚表,它是可以用于通过简单地参照其模型名称的虚表,即,不需要运行 CREATE VIRTUAL TABLE。 它的一个例子是 dbstat 虚表,它提供了一个数据库文件中的 B 树和溢出页的低级别信息。
6. 全文检索版本 5 (FTS5),是一个虚表组件,它允许创建一个可以之后全文检索的虚表。以下是如何通过 FTS5 填充一个虚表:
CREATE VIRTUAL TABLE email USING fts5(sender, title, body);一旦你拥有一个 FTS5 虚表,你可以通过三种方式来在其中查询一个词:

SELECT * FROM email WHERE email MATCH 'fts5'; SELECT * FROM email WHERE email = 'fts5'; SELECT * FROM email('fts5');这个功能依然在实验状态。

值得一提的其它变化是当使用 CREATE VIEW 时增加了列名的可选列表,当创建一个视图,并让他们在查询时检查的时候引用未定义表的可能性。

更多信息,阅读 SQLite 3.9.0 3.9.1 release notes

查看英文原文: SQLite 3.9 Supports JSON, Indexes on Expressions and More


感谢张龙对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入 InfoQ 读者交流群)。

2015-10-28 19:008153
用户头像

发布了 32 篇内容, 共 19.5 次阅读, 收获喜欢 8 次。

关注

评论

发布
暂无评论
发现更多内容

如何创建逼真的3D模型

3D建模设计

材质修改 材质贴图 材质纹理

JAVA基于物联网技术的智慧校园电子班牌原生微信小程序源码

源码星辰

智慧校园管理系统

分布式基础概念-消息中间件[Kafka]

派大星

大数据 Java 面试题

11种编程语言中,返回多个不同类型的方法样例

华为云开发者联盟

编程语言 开发 华为云 华为云开发者联盟

云教室服务器配置详解

青椒云云电脑

云教室 云教室解决方案

阿里云人工智能平台PAI多篇论文入选EMNLP 2023

阿里云大数据AI技术

AI

如何删除/替换3D模型的材质贴图

3D建模设计

材质合批 材质修改 材质贴图 材质纹理

摆脱Excel 寻求现代零售智能化管理的出路

第七在线

CNCF首个云原生多云容器编排项目Karmada正式晋级孵化

华为云开发者联盟

云原生 后端 华为云 华为云开发者联盟

云桌面的应用场景及利弊

青椒云云电脑

云桌面 云电脑 云桌面系统

从技术角度分析如何选择灰度测试方式

Onegun

功能测试 灰度测试

HarmonyOS:使用MindSpore Lite引擎进行模型推理

HarmonyOS开发者

HarmonyOS

数据驱动国有企业数智化转型,平台底座将发挥重要作用

用友BIP

数据驱动

桌面云的发展前景与机遇

青椒云云电脑

桌面云 云桌面 云桌面厂家

京东哥伦布即时设计平台ChatGPT落地实践 | 京东云技术团队

京东科技开发者

前端 ChatGPT 即时设计

光纤的连接

小齐写代码

38 | 分治算法:谈一谈大规模计算框架MapReduce中的分治思想

鲁米

中国如何才能出世界级零售企业?

第七在线

39 | 回溯算法:从电影《蝴蝶效应》中学习回溯算法的核心思想

鲁米

最佳实践 | 第七在线助力绫致时装集团配补调提升运营能力

第七在线

GLB/GLTF 模型压缩轻量化

3D建模设计

材质合批 材质修改 材质贴图 材质纹理

数据中台即服务——数据中台的四大支柱

用友BIP

第七在线(7thonline):助力零售业解决发展难题,驱动智能化转型

第七在线

最佳实践 | 第七在线智能采购计划助力全渠道销售决策

第七在线

模型放置到3D场景中后模型位置与鼠标选中的位置不一致怎么办?

3D建模设计

材质合批 材质修改 材质贴图 材质纹理

一招MAX降低10倍,现在它是我的了 | 京东云技术团队

京东科技开发者

缓存 性能优化 缓存优化 OHC

云桌面技术的革新

青椒云云电脑

桌面云 云桌面

SQLite 3.9支持JSON、表达式索引及更多特性_语言 & 开发_Sergio De Simone_InfoQ精选文章