写点什么

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:008055
用户头像

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

关注

评论

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

5分钟了解LangChain的路由链

快乐非自愿限量之名

数据库

平价 Vision Pro 需搭配 Mac/iPhone;OpenAI 收购实时分析数据库公司丨 RTE 开发者日报

声网

数据产品经理的发展与现状(二)

松子(李博源)

#数据产品经理

阿里巴巴中国站关键字搜索API返回值分析:电商数据驱动的渠道拓展与整合

技术冰糖葫芦

API Explorer API 文档 API 管理 pinduoduo API

通过ETLCloud实现SQL Server数据同步至Oracle

RestCloud

oracle sql ETL SqlServer ETLCloud

Trapcode Particular for Mac(AE 3D粒子系统插件)

Mac相关知识分享

插件 图形设计

WatchDog:一款.NET开源的实时应用监控系统

不在线第一只蜗牛

.net 开源 开源软件

用云手机可以做tiktok吗?

Ogcloud

TikTok 云手机 海外云手机 tiktok云手机 tiktok运营

win版JetBrains RubyMine 2024(Rails/Ruby集成开发环境) v2024.1.4中文特别版

iMac小白

Axure RP 9 for Mac(原型设计软件)

Mac相关知识分享

Axure RP 9 设计软件

企业级低代码开发效率变革赋能业务增长

EquatorCoco

低代码 数智赋能

基于Istio服务网格的熔断限流实现

inBuilder低代码平台

你还在手动操作仓库?这款 CLI 工具让你效率飙升300%!

Immerse

GitHub gitee 仓库 del-repos

软件测试学习笔记丨JUnit5超时处理

测试人

软件测试

Royal TSX for Mac(强大的远程管理软件)

Mac相关知识分享

桌面管理软件

告别数据烦恼,如何一键搞定数据归档与清理?

NineData

数据归档 NineData 清理功能 时区选择 字段支持

Illustrator 2023((ai2023)下载激活安装,支持win版和mac版

你的猪会飞吗

ai2023 AI2023下载

云原生技术领域的探索与实践

快乐非自愿限量之名

云原生

Tampermonkey for Mac(油猴Safari浏览器插件) 4.20.6184 中文版

Mac相关知识分享

脚本管理 插件下载

GPU云服务器是什么?有什么用途?

Ogcloud

云计算 gpu 云服务器 GPU云服务器

一会一展一赛,共绘 AI 新篇章!和鲸出席 GAITC 2024 全球人工智能技术大会

ModelWhale

人工智能 AI技术

轻松两步,借助向量数据库 VectorDB 与千帆 Appbuilder 构建个性化本地问答知识库

Baidu AICLOUD

向量数据库 rag

Redis Desktop Manager for Mac(Redis桌面管理工具) v2022.5.0中文版

Mac相关知识分享

可视化工具 mac软件下载

AlDente Pro for Mac(电池最大充电限制软件

Mac相关知识分享

Mac Mac软件 电池软件

Altair 人工智能技术助力MABE预测消费者行为,实现设备性能优化

Altair RapidMiner

人工智能 AI 算法 数据分析 预测分析

数字化转型下的企业人力资源信息系统研究

不在线第一只蜗牛

人力资源 低代码 数字转型

DNS解析失败是什么意思?DNS解析失败怎么办?

国科云

智心顾问:为心智障碍家庭带来温暖与专业支持

有道技术团队

#人工智能

聚力教研共成长!思腾合力携手昇腾AI打造人工智能云平台

Geek_2d6073

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