问题标签 [json-arrayagg]

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 投票
0 回答
47 浏览

java - java中的Json响应比较忽略json数组中的排序

我想比较两个 json 响应。我需要一种方法来比较响应,不仅忽略子属性的顺序,还忽略 json 数组中元素的顺序。例如:

目标响应:

源响应

当我比较以上两个响应时,我应该得到一个具有以下差异的差异列表

尝试使用 json 比较器它似乎不起作用。为此需要一个java代码

0 投票
0 回答
5 浏览

mysql - 如何美化MySQL中JSON_ARRAYAGG/JSON_OBJECT的SQL查询?

假设我有一些示例数据salary_table如下:

我尝试使用下面的 SQL 可以得到我需要的结果,

但是上面的结果很难看,

我的完美输出如下,实际上,我的结果中不需要 JSON_ARRAYAGG:

如何美化MySQL中JSON_ARRAYAGG/JSON_OBJECT的SQL查询?

0 投票
1 回答
57 浏览

json - 使用 cubePosition 数据编写 JSON 文件以生成 10x10x10 立方体

在这里,我正在尝试编写一个代码,该代码可以使用我提供的数据(如行、列和深度)为我编写和创建 JSON 文件。例如,我需要生成一个 10 x 10 x 10 的立方体。当我序列化它时,我也在代码中提供了统一检查器中的这些数据。我尝试在 for 循环中实现这一点并编写 JSON 文件。但我没有得到我想要的输出。我期望多维数据集位置不同的输出,而发生的事情是我的数据中的所有数据或多维数据集位置是我给出的数字之前的那个。也就是说,如果我将行、列和深度设为 10。所以对于整个 1000 个元素,我的数据就像 x: 9, y: 9, z:9。下面的图片更好地解释了。我知道我是在某些时候犯了错误,只是无法弄清楚在哪里。我在这里先向您的帮助表示感谢

我的期望与输出结果的图像参考

0 投票
1 回答
61 浏览

mariadb - MariaDB JSON_ARRAYAGG 给出错误的结果

MariaDB 15.1 使用时有 2 个问题JSON_ARRAYAGG


括号[]被省略

不正确的错误结果,值重复或省略


我的数据库如下:

用户:

车:

电话:


[]1.省略括号

例如,这个查询获取用户的汽车列表:

结果:括号[]被省略carsJSON_ARRAYAGG具有类似的行为GROUP_CONCAT

但是,在添加过滤器时,不会省略WHERE user.id = 1括号:[]


2.不正确的错误结果,值重复或省略

这个错误很奇怪,因为必须满足以下条件:

  • 咨询超过2张桌子
  • DISTINCT必须使用该选项
  • 一个用户至少有 2 辆汽车和至少 3 部手机。

重复值

例如,这个查询获取用户的汽车列表和电话列表:

我将以 json 格式保留输出,并且只保留感兴趣的元素。

结果:括号[]被省略且重复Verizon

省略的值

phone.id查询中省略省略时出现此错误

结果:括号[]被省略,Sprint被省略。

显然,发生这种情况是因为它在 的列之间产生了 OR 类型JSON_OBJECT,因为company存在于不同的行和number其他不同的行中

GROUP_CONCAT实例JSON_ARRAYAGG解决duplicateomitted对象的问题

但是,通过添加 filter WHERE user.id = 1,括号[]没有省略,也解决了duplicateoromitted对象的问题:


我究竟做错了什么?

0 投票
0 回答
69 浏览

java - 如何编写查询以比较 Postgresql 数据库中 json 对象数组中的对象

我在 PostgreSQL 中有一个 jsonb 列,它可以具有以下 json 数组引用:

我有 10k+ 条记录,必须根据以下标准获取记录:

具有此数组对象的记录具有-> 相同的“endTime”、“startTime”但不同的“skillCode”。

如何编写查询以获取具有上述条件的所有记录的列表。

我做了什么 :

  1. 我能够基于一个键获取基于 json 对象数组列的记录。

SELECT * FROM table t WHERE EXISTS (SELECT * FROM jsonb_array_elements(t.column) AS jsond WHERE (jsond ->> 'skillCode')::int = 1000128);

  1. 但是无法像我们通过循环和签入 Java 代码那样来比较对象之间的差异。
0 投票
1 回答
17 浏览

mysql - MYSQL查询以获取每行具有不同子项的数组列表

假设我们有三张桌子

category_level_one

ID 猫名
1 物理
2 化学

category_level_two

ID 子猫名 cat_l1_id
1 有机的 2
2 无机的 2
3 身体的 2
4 力学 1
5 电和磁 1

category_level_three

ID 子猫名 cat_l1_id cat_l2_id
1 原子和分子 2 3
2 化学平衡 2 3
3 醇类 2 1
4 醚类 2 1
5 P 块元素 2 2
6 运动学 1 4
7 工作功率和能量 1 4
9 当前电力 1 5

它将提供数据为

ID 姓名 类别一 类别三
1 有机的 {“id”:1,“名称”:“化学”} [ {...} , {...}]

如何使用属于该 catl2 的每个 categotyThree 列表获取 category_l2 的多个唯一行?

0 投票
1 回答
44 浏览

arrays - 从与 JSON 对象数组匹配的巨大 JSON 对象数组中获取索引的最佳方法是什么

我想知道从与 JSON 对象数组匹配的巨大(数组长度接近 150 000)JSON 对象数组中获取索引的最佳方法。

目前我正在使用 for 循环来完成这项工作,但这需要 3 到 4 分钟的时间。有什么最好的方法可以提高性能吗?下面是一个说明我的要求的例子。

假设hugeArray的长度为150 000。我还有另一个长度为15 000的JSON数组(matchArray)。

我想要与 matchArray 匹配的 hugeArray 中的索引。

例如从上面的数据中,matchArray 有对象列表,这些对象要与hugeArray 中的对象进行匹配。如果匹配,则返回 hugeArray 的索引。上述示例的输出将如下所示。

[0,2,...,150000]

为此,我编写了一个函数,该函数返回hugeArray 的索引。如果 matchArray 对象与 hugeArray 匹配,则返回匹配的 hugeArray 的索引,否则返回 -1。

写在 getIndexes 函数下面来调用上面的 getArrayIndex 函数。

最后通过调用 getIndexes 函数,以数组格式给出所有匹配的索引。

例如,

0 投票
1 回答
52 浏览

oracle - 带有 JSON_ARRAYAGG 的 Oracle Cloud DB 19c 错误

我尝试使用 JSON_ARRAYAGG 进行选择并使用相同的数据获得错误结果

结果,我得到带有 2 个数组的 JSON,这些数组在第一个数组中的数据顺序减少,在第二个数组中顺序错误

如果我在选择中替换位置 JSON_ARRAYAGG 我再次看到第一个数组的正确顺序和第二个数组的错误顺序

查看结果:

第二个顺序和任何其他数组都是错误的。第一个元素是正确的,但所有其他元素都是相反的

0 投票
2 回答
347 浏览

java - JSON解码去除十进制尾随零

我有一个 JsonArray,需要将其转换为对象数组。下面是我正在使用的代码。响应 - json 响应

问题是当转换为小数字符串时,尾随零被删除。示例:如果值为 4.50,则仅返回 4.5,如果为 3.00,则返回 3。希望按原样返回原始数据。有关解决此问题的任何指示

0 投票
1 回答
43 浏览

android - 如何设置从 API 获得的产品总量的文本?

我想显示从 API 获得的产品总量。这是我实现的代码。错误显示 onErrorResponse: org.json.JSONException: Value Final:92 of type java.lang.String 无法转换为 JSONArray

解析数据的代码是