在Orion Context Broker SQL样式中按属性值过滤 - "属性"喜欢'%text%'

时间:2018-04-20 05:42:07

标签: fiware fiware-orion

关注NGSIv2 specification document有没有办法按属性字符串值的一部分搜索实体?

喜欢的东西 http://192.168.36.95:1026/v2/entities?type=POI&options=keyValues&q=Description==' 部分文字'  获取描述属性包含' PART OF TEXT'

的实体

2 个答案:

答案 0 :(得分:2)

您可以使用匹配模式运算符。见下文

〜=。该值与给定模式匹配,表示为正则表达式,例如色〜=流。对于要匹配的实体,它必须包含目标属性(颜色),并且目标属性值必须与右侧的字符串匹配,' ow'在这个例子中(棕色和黄色匹配,黑色和白色不匹配)。此操作仅对string类型的目标属性有效。

所以在你的情况下它将是

http://192.168.36.95:1026/v2/entities?type=POI&options=keyValues&q=Description~=

答案 1 :(得分:0)

可以将REGEXP匹配应用于ID NGSI字段:

  

您可以使用idPattern URL过滤使用实体ID模式   参数(其值为正则表达式)。例如,要获得   所有以id以Room开头并且后跟一个数字的实体   您可以使用2到5范围(在这种情况下检索Room2)(注意   -g在curl命令行中以避免括号问题):curl localhost:1026 / v2 / entities?idPattern = ^ Room [2-5] -g -s -S -H'接受:   应用/ JSON' | python -mjson.tool

     

发现于:   https://fiware-orion.readthedocs.io/en/master/user/walkthrough_apiv2/index.html#getting-all-entities-and-filtering

我不确定这是否也适用于NGSI Type。但是这个功能并不适用于用户定义的属性。