问题标签 [sqlite-json1]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
699 浏览

sql - 在 Json 对象中使用 JSON1 和 SQLite3 执行聚合

我刚开始使用支持 JSON1 的 SQLite 3。

我已经创建了一个包含多个属性的数据库。这些属性之一是 json 对象。

我想要做的是在这个对象中执行聚合。

运行以下查询:

返回以下内容:

现在,我想做的是按标签键分组,例如,对计数键求和

输出应该是这样的:

或这个:

我试图像这样实现后一个:

问题是,如何确保数组中的所有对象都以相同的方式排序。所以这可能会导致问题。

有什么解决办法吗?谢谢!

0 投票
1 回答
486 浏览

sqlite - 从查询结果中的 json 对象中删除值为“NULL”的 K、V 对

以下给了我一个结果:{"a":null,"b":99.0,"c":null} 我想要{"b":99.0}一个结果,以便我可以在 JSON 补丁中使用该结果。如何使用 sqlite/json1 实现这一点?

0 投票
0 回答
901 浏览

sqlite - 使用颤振 sqflite 加载 JSON1 扩展

在我的颤振应用程序中,我使用 sqflite 与本地数据库通信。我需要查看特定查询的 json 数据。JSON1扩展将是理想的选择。但是,我找不到如何在颤振应用程序中加载扩展,使其在我的查询中可用,因为加载扩展的文档是为 C 语言而不是 Dart 编写的。所以,一些问题可以帮助我:

  • 我应该为 iOS 和 Android 编译不同的架构吗?
  • 编译后的文件应该放在我的应用程序的什么位置?我认为它没有作为资产添加?
  • 以及,如何在我的颤振/飞镖代码中访问/加载 C 扩展?

PS 也欢迎对 Flutter 其他支持良好的本地数据库(文档数据库或支持 json 查询的数据库)提出建议。我查看了 couchbase lite,但插件(fluttercouchcouchbase-lite-flutter)仍在缓慢开发中。

0 投票
1 回答
771 浏览

json - 如何在 Sqlite 中加入多个 JSON 列

我正在寻找在同一个表中加入多个 JSON 列的 Sqlite 语法。我创建了一个像这样的表:-

然后我插入一些项目,如: -

现在我正在寻找搜索 sql 以列出哪些分支具有 catnumber='ABC123' newstock 或 oldstock,以及库存量。也许是这样的: -

以上适用于一个 JOIN,但是当我实现第二个 JOIN 时,我得到一个语法错误。

有谁知道正确的语法?提前致谢。

0 投票
2 回答
1291 浏览

android - 如何使用 Android NDK SQLite3 扩展 json1

对不起,我首先缺乏英语。

我编译它是因为我需要 Android NDK 中的 SQLite3 扩展 JSON1

编译结果是 sqlite3.exe

如何将此文件用于 Anroid NDK 或者我可以找到其他方式吗?

我想使用的代码

我试过这个
只是把.c文件和.h文件放在cpp文件夹→SQLite3工作但没有这样的函数json

0 投票
1 回答
594 浏览

json - 当键为空字符串时,如何在sqlite中检索json对象中的值?

我正在处理一个包含 json 对象的 sqlite 表。这些 json 对象的键是空字符串。如何检索值?例如:

如何检索“空”?

0 投票
1 回答
1007 浏览

json - SQLite 在包含 JSON 的列内搜索

我有一个 SQLite 数据库,其中调用了一个列,i18n并包含一个 JSON 树,其中包含一些本地化字符串。例如:

现在我应该在name传递的本地化节点内搜索用户键入的部分字符串。我最初的尝试是使用正则表达式,但我担心它可能会慢一点(用户打字时一切都应该发生,即使操作受到限制)。现在我正在考虑另外两种方法:

  • 使用 FTS 创建虚拟表?这个怎么运作?
  • 更改/制作数据库的副本,其中这些字段在它们自己的列中拆分(即RU,,GR等等IT)。

你有什么建议和一个简单的实现?

0 投票
1 回答
2539 浏览

json - 如何通过多级分组从 SQLite 中获取嵌套的 JSON 数据?

我试图在一个查询中以 JSON 格式在工作日之前查询所有商店及其各自的营业时间。

这是我尝试过的演变。我想我想念一种做多层次的方法json_group_object

我怎样才能在这里分组相同的ID?

将为与 a 对应的每个唯一值返回一行group by。因此,最外面的select必须有一个group by store.

然而,这个内部查询返回文字 JSON。将内部 JSON 解码然后在最外面的查询中对其进行编码似乎很愚蠢。

Postgres 中的 IIRC 这个返回 JSON 的内部查询不会返回文字 JSON,但无论哪种方式,我都对如何继续感到困惑。

谢谢你的帮助。

0 投票
1 回答
2071 浏览

sql - 在 sqlite 中使用 json1 查询 JSON 数组的多个值

我正在尝试使用 json1 扩展来查询我的 sqlite 数据库,并希望查询一个 json 数组以匹配多个值并返回匹配所有值的条目。

示例实体:

实体 1:

实体 2:

在这个例子中,我想查询匹配多个值的标签。如果我的输入是,[tag1, tag2]那么我只想返回Entity 1,而如果我的输入是,tag2那么我想返回两个实体。

我期望工作的查询是

但是这个查询在所有情况下都失败了。至于它为什么失败,我认为它试图匹配数组的每个值,但tag1事实tag2并非如此,因为每个元素只有 1 个值。这是有效的还是有其他解释?

[tag1, tag2]在检查值和仅返回的非常具体的用例中对我有用的查询Entity 1

我想知道为什么它在上述情况下有效?我能想到的唯一一件事是它检查数组的每个值是否为tag1或,tag2但我不明白为什么它返回Entity 1的值也为tag3且不符合条件。然而,这种情况在大多数其他情况下都会失败,例如在我搜索[tag3, tag4]的情况下,在这种情况下它会返回两个实体,但它应该不返回任何实体。所以这绝对不是答案

我仍然无法找到有效查询此问题的正确方法,并且正在寻找任何建议。

理想情况下,如果有更简单的方法来查询这个,那将不胜感激。我想到的是我给查询一个标签值列表,它匹配所有标签,而我不必使用AND/OR运算符

0 投票
0 回答
912 浏览

sqlite - Sqlite order by 子句 json_extract 给出格式错误的 JSON 错误

我在 sqlite 数据库的表中有一些数据。该表只有一列数据作为 JSON 记录。

当我从表中查询时,json_extract我可以看到从 JSON 路径中获取的数据。但是,当我尝试按子句顺序使用相同的 json_extract 时,它会给我一个错误,说 JSON 格式错误。

json1我安装的模块是通过json1.c从以下链接下载文件: https ://sqlite.org/cgi/src/raw/ext/misc/json1.c?name=9799e4252b305edcbe659329eec3ca80ed85f968

并按照以下步骤

Sqlite 版本:sqlite-snapshot-201904101324