- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试从 mySQL 表中导出 json 数据,其中该行成为字典中的条目。我已经能够使用下面的代码为每一行创建条目。
SELECT JSON_OBJECT(p.link,
JSON_OBJECT("location", p.location , "finish", p.finish, "start-date", p.startdate, "position", p.position))
FROM regattas p WHERE sailor_uuid="name"
它返回一堆看起来像这样的行。
{\"link\": {\"finish\": \"2/8\", \"location\": \"college\", \"position\": \"Crew\", \"start-date\": \"2019-03-30\"}}
这就是我想要的,但我希望每个 link:dict 条目都成为一个大 json 文档的一部分。我尝试用合并来包围它,但仍然遇到问题,因为 json 对象仅算作一个参数。有没有某种方法可以使用上面第一个代码块中的 select 返回的所有内容作为参数。
SELECT JSON_MERGE(JSON_OBJECT(p.link, JSON_OBJECT("location", p.location , "finish", p.finish, "start-date", p.startdate, "position", p.position))) FROM regattas p WHERE sailor_uuid="name"
我可能会错过一些 super 简单的答案,因为我对 mySQL 非常陌生,非常感谢任何帮助。
最佳答案
如果您使用的是 mysql 版本5.7.22+
,那么您可以使用JSON_ARRAYAGG
,因此查询如下所示,
SELECT JSON_ARRAYAGG(JSON_OBJECT(p.link, JSON_OBJECT("location", p.location , "finish", p.finish, "start-date", p.startdate, "position", p.position))) FROM regattas p WHERE sailor_uuid="name"
对于旧版本,您可以尝试以下解决方法:
SELECT concat('[',GROUP_CONCAT(JSON_OBJECT(p.link, JSON_OBJECT("location", p.location , "finish", p.finish, "start-date", p.startdate, "position", p.position))),']') FROM regattas p WHERE sailor_uuid="name"
但对于这种方法,请确保您的 GROUP_CONCAT
限制足够高。您可以设置group_concat_max_len
参数限制。
关于mysql - 如何从选择命令 mySQL 中组合 JSON_OBJECTS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58849844/
是否可以有条件地构建一个 json 对象,例如: mysql> SELECT JSON_OBJECT( CASE WHEN some_condition THEN key,
当我从数据库中选择 JSON_OBJECT 时,它会给我意想不到的结果。 select JSON_OBJECT('test', BIN_TO_UUID('GÇ~pw–'Ú¦[¦£´Æ')); { "t
我在选择查询中使用 JSON_OBJECT 和 JSON_ARRAY 函数创建了一个 JSON 结构。我遇到的问题是在格式化的 JSON 结果中返回日期时间列的格式。 例如我有一张表titles id
我有以下代码 #include #include #include #include #include int main(int argc, char **argv) { jso
我正在使用 json_object,其中对于不同的产品类别,我们有不同的颜色变量用于前 - kdt_color、fcy_color 等(查看下方) 如何为每个产品选择合适的 color_variabl
我有这个查询 SELECT json_object('image_name', image_name, 'iid', iid) FROM `posts_images` WHERE `pid` = '6
我尝试构建一个返回 json 的函数。 我将 mysql Workbench 更新到 8.0.14 并尝试了以下代码: SELECT JSON_OBJECT( 'name_field', nam
我有以下 sql 查询,使用 GROUP_CONCAT 可以正常工作: SELECT orders.created_at,products.title, o_p.qty AS qty, (SE
我在 Using Dart with JSON Web Services 中使用 json_object 代码在 Dartium 中运行良好。使用 dart_to_js_script_rewriter
如何获取 3 列的 JSON_OBJECT(),其一些已经包含 JSON 格式字符串。 这是我的例子,info 字段包含一个 json 字符串,所以所有这个对象都被转义了: SELECT T1
我正在尝试从 mySQL 表中导出 json 数据,其中该行成为字典中的条目。我已经能够使用下面的代码为每一行创建条目。 SELECT JSON_OBJECT(p.link, JSON_OBJECT(
我试图使用以下查询向 MySQL 表插入一个条目。如果我将 MySQL 参数化查询与 mysqli 一起使用,如下所示,它可以正常工作,没有任何问题。 insert into notelist(che
我正在从 ColdFusion 9.0.1 中的 MySQL 5.7 查询中取回一个 JSON 字符串。这是我的查询: SELECT ( SELECT GROUP_CONCAT(
我编写了一个查询,从表中获取帖子并返回有关每个帖子作者的信息: SELECT post.id, post.text, post.datetime, JSON_OBJECT(
我试图让 Oracle 在 SQL NULL 数据上生成 JSON null 值,如下所示: select json_object(key 'a' value 1, key 'b' value n
我试图让 Oracle 在 SQL NULL 数据上生成 JSON null 值,如下所示: select json_object(key 'a' value 1, key 'b' value n
我正在尝试从 MySQL 获取 JSON 格式的结果集。据我所知,MySQL 是有能力的 returning整个结果集为: JSON_OBJECT JSON_ARRAY 通常以哪种格式返回结果集——作
我正在使用 jsob_build_object 函数从我的表中的数据生成 json。 select json_build_object('name', p.name, 'birthday', p.bi
我正在尝试对表进行查询,在该表中我想选择一些列和其他一些列作为嵌套 json 对象,例如,我想选择用户列表及其地址作为嵌套对象。 SELECT u.first_name, u.last_nam
我有 MariaDB 10.2 和这个 SQL: SELECT products.*, CONCAT('[', GROUP_CONCAT(JSON_OBJECT( 'id', V.id,
我是一名优秀的程序员,十分优秀!