为什么80%的码农都做不了架构师?>>>   

1、概念理解

Hyperledger Composer中的查询以定制查询语言编写。查询queries.qry在业务网络定义中的一个称为()的查询文件中定义。

所有查询都必须包含descriptionstatement属性。

description属性是描述查询功能的字符串。它必须包含但可以包含任何东西。

statement属性包含查询的定义规则,并且可以具有以下运算符:

  • SELECT 是强制性操作员,默认情况下定义要返回的注册表和资产或参与者类型。
  • FROM 是一个可选运算符,它定义了一个不同的注册表来进行查询
  • WHERE 是一个可选运算符,它定义了要应用于注册表数据的条件。
  • AND 是定义附加条件的可选运算符。
  • OR 是可选运营商,它定义了替代条件。
  • CONTAINS 是一个可选运算符,它定义数组值的条件
  • ORDER BY 是定义排序或结果的可选运算符。
  • SKIP 是一个可选运算符,用于定义要跳过的结果数量。
  • LIMIT 是一个可选运算符,它定义了从查询返回的最大结果数量,默认情况下,极限值设置为25。

注:如果您使用Hyperledger fabricV1.1或以下时,LIMITSKIP将无法正常工作,有路过的PARAMS到CouchDB的织物上的问题。参考Hyperledger Fabric问题:FAB-2809

2、示例查询

此查询返回年龄小于所提供参数 firstName为“Dan” 的默认注册表中的所有驱动程序,只要其姓氏不是“Selman”。实际上,这个查询返回所有没有姓氏“Selman”的驱动程序,只要它们在定义的年龄之下,或者具有firstName Dan,并且按lastName升序和firstName升序来命令结果。

query Q20{description: "Select all drivers younger than the supplied age parameter or who are named Dan and whose lastName is not Selman, ordered from A-Z by firstName"statement:SELECT org.example.DriverWHERE ((age < _$ageParam OR firstName == 'Dan') AND (lastName != 'Selman'))ORDER BY [lastName ASC, firstName ASC]
}

3、查询中的参数

查询可以使用运行查询时必须提供的未定义参数编写。例如,以下查询将返回age属性大于提供的参数的所有驱动程序:

query Q17 {description: "Select all drivers aged older than PARAM"statement:SELECT org.example.DriverWHERE (_$ageParam < age)
}

4、示例包含查询

CONTAINS过滤器用于搜索节点中的数组字段。下面的查询返回所有获得准时和稳定驾驶证的驾驶员。考虑到徽章在驾驶员参与者中是阵列类型的。

query Q18 {description: "Select all drivers who has the following interests"statement:SELECT org.example.DriverWHERE (badges CONTAINS ['punctual', 'steady-driving'])
}

转载于:https://my.oschina.net/mdxlcj/blog/1829765

精通Hyperledger之Hyperledger composer查询语言(17)相关推荐

  1. 区块链 Hyperledger Composer 使用教程(环境搭建、项目开发 一)

    Hyperledger Composer使用教程 基本概念介绍 1. 欢迎来到Hyperledger作曲家 Hyperledger Composer是一个广泛的,开放的开发工具集和框架,可以使开发区块 ...

  2. Hyperledger Composer评测

    \ 关键要点 \\ 这项技术只适用于非常少量的场景.\\t 对于去中心化的分类账应用程序来说,Hyperledger Fabric在验证写入批次时使用MVCC(多版本并发控制)已经足够安全,但对于B2 ...

  3. composer创建项目_在Hyperledger Composer上创建区块链解决方案的教程

    composer创建项目 Due to modern business demands, IBM joined hands with other companies to develop an ope ...

  4. 超级账本Hyperledger Fabric的使用

    原文地址:超级账本Hyperledger Fabric的使用 说明 网易云课堂:HyperLedger Fabric手动部署教程的视频讲解 超级账本HyperLedger Fabric手动部署教程的文 ...

  5. Hyperledger Fabric 官网翻译入门教程--之关键概念(Hyperledger Fabric 模型)

    英文地址:http://hyperledger-fabric.readthedocs.io/en/latest/fabric_model.html Hyperledger Fabric Model/ ...

  6. Hyperledger Fabric Model——超级账本组成模型

    超级账本组成模型 本文主要讲述Hyperledger Fabric的关键设计特性,并细述如何实现了一个全面的.可定制的企业级区块链解决方案: 资产定义--资产这里理解为任何具有货币价值的东西,它们都可 ...

  7. 搭建区块链浏览器——基于hyperledger fabric 1.0,MySQL容器

    搭建区块链浏览器--基于hyperledger fabric 1.0,MySQL容器 区块链 hyperledger fabric 浏览器 MySQL docker  Contents 环境要求 分支 ...

  8. hyperledger v1.0.5 区块链入门

    2019独角兽企业重金招聘Python工程师标准>>> hyperledger v1.0.5 区块链入门 本文作者最近在找工作,有意向致电 13113668890 Mr. Neo C ...

  9. Hyperledger技术简介

    Hyperledger简介(官网): Hyperledger是一项开源协作,旨在推动跨行业区块链技术的发展. 这是一项全球合作,包括银行,金融,物联网,制造,供应链和技术领域的领导者. Linux F ...

  10. 区块链以太坊以及hyperledger总结

    https://learnblockchain.cn/ 1.什么是智能合约?它有什么特点? 就是具有交互能力而且能够在区块链中传递的合约 一个由计算机代码控制的以太币账户 特点: 公开透明.能即时与区 ...

最新文章

  1. gcc中-pthread和-lpthread的区别
  2. Spark With Mongodb 实现方法及error code -5, 6, 13127解决方案
  3. Java solr 分词
  4. java04376_Java - jdbc mybatis
  5. 如何学习matlab 知乎,知乎日报
  6. 拼多多与两大权威球鞋鉴别平台达成合作,为“多多潮鞋馆”提供“真香”认证...
  7. HDU 4296 Buildings
  8. 页面引入多个echarts_JavaWeb之Echarts数据统计图表详细教程
  9. 有关 !DOCTYPE HTML
  10. 【渝粤教育】国家开放大学2018年秋季 1058t商法 参考试题
  11. dev多行注释_Shell 实现多行注释的几种常用方法
  12. 机器人学导论 二、正运动学,MDH法
  13. 【备忘录】UTM坐标系与经纬度转换 MATLAB C语言
  14. MTK Android 之MT6577驱动笔记
  15. 【TWS使用系列1】如何从TWS的自选列表中添加/删除自选股?
  16. JDBC读取Oracle的US7ASCII编码中文乱码及不同编码下汉字占用字节的问题
  17. 基于proteus8的8086与8255控制8位数码管显示
  18. TPM零知识学习九 —— tpm全安装流程复盘(上)
  19. spotify下载_我的Spotify推荐系统之旅
  20. Wireshark解密SWAN交互报文

热门文章

  1. (附源码)Flutter Demo
  2. @value 默认值_【Spring】只想用一篇文章记录@Value的使用,不想再找其它了(附思维导图)
  3. Asp.Net中WebApi多图片上传(附前后端代码)
  4. mysql查询表字段的个数
  5. APK解包修改后,重新打包
  6. marven编译时:<pre>错误: 不允许使用自关闭元素</pre>
  7. 编程基本功:学会抄,自然就会创新
  8. 本博客自排名1000到400的各项数据变化
  9. shell脚本中,for的用法
  10. 键盘按键用硅胶材料更好