JDT*_*JDT 4 sql json azure azure-cosmosdb
我正在使用Azure CosmosDB存储文档(JSON)。
我试图查询包含该字段的所有文档,"abc"而不返回不包含该字段的文档"abc"。例如,返回下面的第一个对象,而不是第二个
{
"abc": "123"
}
{
"jkl": "098"
}
Run Code Online (Sandbox Code Playgroud)
我正在尝试使用以下代码:
client.queryDocuments(
collectionUrl,
`SELECT r.id, r.authToken.instagram,r.userName FROM root r WHERE r.abc`
)
Run Code Online (Sandbox Code Playgroud)
我假设上面会检查是否abc存在类似于if (r.abc) {}
我尝试使用 WHERE r.abc IS NOT NULL
提前致谢
A.R*_*wan 34
如果您想知道某个字段是否存在,您应该使用 IS_DEFINED("FieldName") 如果您想知道该字段的值是否具有 FieldName != null 或 FieldName <> null (显然)的值
我在生产中使用它的变体:
SELECT c.FieldName
FROM c
WHERE IS_DEFINED(c.FieldName)
Run Code Online (Sandbox Code Playgroud)
Rad*_*spy 18
NOT在 SQL 查询中添加要求反的运算符。
SELECT r.id, r.authToken.instagram,r.userName
FROM root r
WHERE NOT IS_DEFINED(r.abc)
Run Code Online (Sandbox Code Playgroud)
包括 FieldNameabc不存在的所有条目。
您需要做的就是将查询更改为
SELECT r.id, r.authToken.instagram,r.userName FROM root r WHERE r.abc != null
要么
SELECT r.id, r.authToken.instagram,r.userName FROM root r WHERE r.abc <> null
两家运营商都可以工作(在数据浏览器上测试)
| 归档时间: |
|
| 查看次数: |
4628 次 |
| 最近记录: |