作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有以下 JSON,我想在 name="style"和属性包含 US - 矩形时获取此记录
{
"id": "5ede1c0f1b4b335ed3bf3bca",
"attributes": [
{
"name": "Style",
"properties": [
"US - Rectangle",
"US - Square"
]
},
{
"name": "Button Configuration",
"properties": [
"2 button"
]
},
{
"name": "Columns",
"properties": [
"Single Column"
]
},
{
"name": "Colors",
"properties": [
"Beige"
]
}
],
}
我已经写了这个查询
SELECT *
FROM c
where ARRAY_CONTAINS(c.attributes, {name:"Style"},true )
但无法理解如何包含属性值
最佳答案
这就是自连接发挥作用的地方:
对属性数组进行自连接,然后通过对属性执行 ARRAY_CONTAINS()
进行过滤。下面是一个发出文档 ID 以及包含属性“US - 矩形”的特定属性名称的示例:
SELECT c.id,a.name FROM c
JOIN a IN c.attributes
WHERE ARRAY_CONTAINS(a.properties,"US - Rectangle")
输出:
[
{
"id": "5ede1c0f1b4b335ed3bf3bca",
"name": "Style"
}
]
如果您想将搜索限制为仅查看一个特定属性,只需将其添加到 WHERE 子句中即可:
SELECT c.id, a.name FROM c
JOIN a IN c.attributes
WHERE a.name = "Style"
AND ARRAY_CONTAINS(a.properties,"US - Rectangle")
关于azure - 如何使用 cosmos db 中的 ArrayContains 方法检查字符串数组内的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62345840/
我在 Nestjs 中为我的 Controller 编写测试。我希望一组员工包含对象 {id:1, firstname: 'john', lastname:'Dole'} .所以我写: it('sho
我有以下 JSON,我想在 name="style"和属性包含 US - 矩形时获取此记录 { "id": "5ede1c0f1b4b335ed3bf3bca", "attribute
我有以下 JSON,我想在 name="style"和属性包含 US - 矩形时获取此记录 { "id": "5ede1c0f1b4b335ed3bf3bca", "attribute
我的查询是: snapshot = await FirebaseFirestore.instance .collection('dialogs') .where
我是一名优秀的程序员,十分优秀!