【巨杉数据库Sequoiadb】如何使用sql查询嵌套的数据类型

【问题详细描述】 
见图select.png中的数据,图中的PageSize属于数组内部的数据,现在只需要将PageSize查询出来。也就是使用sql进行查询嵌套数据的查询。

【检视意见】 
1、已经解决的问题单,“解决结果”标记为“已解决” 
2、“问题描述”中不要只是简单如图所示,尽量将图片的中问题描述出来 
3、“解决方法”中不要简单的如图所示,用文字进行描述,图片中的语句可以

当作示例进行介绍;涉及到官方的文档中的知识点可以将链接贴出来 
4、个人需要了解该查询命令为什么这样写,方便以后灵活应用

【解决办法】 
1、直接查询 
根据图select.png中的数据可以得出查询语句:db.exec("select T.Details.$[0].PageSize from $SNAPSHOT_CL as T where T.Name = "my.my" group by T.Name ")。 
查询结果可见图solve1.png。 
这里需要注意的是语句当中as别名的使用以及读取数组内数据的操作。 
as别名的使用范围:如果查询源不为集合,则本层查询中所有字段均需要引用别名(* 除外),例如:select T.a , T.b from (select * from foo.bar) as T where T.a < 10 。 
详细可见: 
(1)select的用法: http://doc.sequoiadb.com/cn/SequoiaDB-cat_id-1432190960-edition_id-0 。 
(2)as的用法: http://doc.sequoiadb.com/cn/index-cat_id-1432190968-edition_id-300 。 
数组内数据的读取方式:使用"数组名.$[index]",index为下标。例如T.Details.$[0]就是表示Details数组的第一个元素。 
详细可见: 
(1)数组: http://doc.sequoiadb.com/cn/index-cat_id-1519612291-edition_id-300 。 
(2)$+标识符的使用: http://doc.sequoiadb.com/cn/index-cat_id-1432190918-edition_id-208 。 
2、使用split by 将数组拆分后查询 
查询语句:db.exec("select K.Details.PageSize as PageSize from (select * from $SNAPSHOT_CL as T where T.Name = "my.my" split by T.Details) as K ")。 
查询结果可见图solve2.png。 
使用split by先将数组拆分,然后直接使用"数组名.要查询的字段名"即可查询到相关信息。 
详细可见: 
(1)split by的用法: http://doc.sequoiadb.com/cn/index-cat_id-1432190965-edition_id-300


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/69935160/viewspace-2650534/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/69935160/viewspace-2650534/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值