2.Select query返回具有正确结构的JSON以转换为pojo
select json_object(
'parentProperty1', parentProperty1
, 'parentProperty2', parentProperty2
, 'children', (select CAST(CONCAT('[',
GROUP_CONCAT(
JSON_OBJECT(
'childProperty1', childProperty1
, 'childProperty2', childProperty2
)),
']')
AS JSON)
from childTable c
where p.messageId=c.messageId
)
))
from parentTable p
;
在mysql shell上执行查询将返回预期的JSON:
{
"parentProperty1": "value1",
"parentProperty1": "value2",
"children": [
{
"childProperty1": "value3",
"childProperty2": "value4"
},
{
"childProperty1": "value5",
"childProperty2": "value6"
}
]
}
在camel中运行查询时,我遇到了一个问题,对此我无法找到解释或解决方案。
[{json_object('parentProperty1', parentProperty1 , 'parentProperty2', parentProperty2 , 'children', (select CAST(CONCAT('[',
={"parentProperty1": "value1", "parentProperty2": "value2", "children": [{"childProperty1": "value3", "childProperty2": "value4"}, {"childProperty1": "value5", "childProperty2": "value6"}]}}]
提前致谢
您实际上得到的是一个键值对。由于查询中没有为json_obect提供别名,所以mysql生成默认列名。这就是您在结果中看到的查询片段。
向查询中的json_obect添加别名,如下所示:
select json_object(
'parentProperty1', parentProperty1
, 'parentProperty2', parentProperty2
, 'children', (select CAST(CONCAT('[',
GROUP_CONCAT(
JSON_OBJECT(
'childProperty1', childProperty1
, 'childProperty2', childProperty2
)),
']')
AS JSON)
from childTable c
where p.messageId=c.messageId
)
) as result
from parentTable p;
这将返回如下内容:
{result={"children": [{"childProperty1": "value3", "childProperty2": "value4"}, {"childProperty1": "value5", "childProperty2": "value6"}], "parentProperty1": "value1", "parentProperty2": "value2"}}
我在中心时区的服务器上安装了一个postgres db,所以所有的时间戳列都在中心时区。 在postgres中有没有办法将数据库中的所有时区列从CST更改为GMT?将数据库配置为使用GMT是最佳做法吗?
问题内容: 有什么简单的方法可以将数据库从mysql更改为mongoDB? 或更好的一个建议我好的教程做到这一点 问题答案: 有什么简单的方法可以将数据库从mysql更改为mongoDB? 方法#1 :以CSV格式从MySQL导出,然后使用mongoimport工具。但是,这在处理二进制数据的日期方面并不总是很好。 方法2 :使用您选择的语言编写传输脚本。基本上,您编写了一个程序,一次从MySQL
问题内容: 假设我有一个结构: 与数据库表具有相同的架构。将数据库行解析为结构的最简单方法是什么?我在下面添加了一个答案,但是我不确定这是最好的答案。 问题答案: 这是一种实现方法-只需在函数中手动分配所有结构值即可。
问题内容: 我希望从该网站的mma 数据中抓取数据并解析一些highcharts表。我单击的链接与selenium,然后切换到图表。我转到该站点,然后在Artem Lobov行的Pinnacle列中单击+420。这将创建一个弹出图表。然后,我切换到活动元素。我想捕获由highcharts绘制的图形以响应点击。 我以以下方式使用selenium: 我能够单击链接并获得图表,但我对highcharts
问题内容: 我刚刚为组织此表中第70页上显示的查询层次结构数据的“关闭表”方法做了“更新/添加/删除”部分:http ://www.slideshare.net/billkarwin/sql-antipatterns- strike -背部 我的数据库如下所示: 表类别: 表类别树: 但是,从单个查询获取整棵树作为多维数组时,我遇到了一个问题。 这是我想回来的东西: 更新: 找到了此链接,但是我仍
我正在尝试从位于的文件导入数据https://drive.google.com/file/d/1leOUk4Z5xp9tTiFLpxgk_7KBv3xwn5eW/view进入数据帧。我试过使用 但是我得到一个错误说"ParserError:错误标记化数据。C错误:期望在行231中有9个字段,看到10"我不想使用'error_bad_lines=False'并跳过数据行。 请帮忙。