这是示例documentDB文档,
我想得到在一个或多个科目上失败的所有文件。
我发现了一些东西
SELECT
*
FROM students s
JOIN c IN s.subjects
WHERE c.result = "pass"我想通过使用c#代码检索
{
"id": "0066a253-f042-4213-b06e-65b1ea1e49aa",
"name": "Sunny",
"rollNo": 123,
"class": "2nd",
"section": "B",
"Department": {
"name": "CSE",
"id": "cse",
"subjects": [
{
"id": "subject-1",
"marksObtained": 66,
"maxMarks": 100,
"result": "pass"
},
{
"id": "subject-2",
"marksObtained": 56,
"maxMarks": 75,
"result": "pass"
},
{
"id": "subject-3",
"marksObtained": 22,
"maxMarks": 100,
"result": "fail"
},
{
"id": "subject-4",
"marksObtained": 36,
"maxMarks": 50,
"result": "pass"
},
{
"id": "subject-5",
"marksObtained": 16,
"maxMarks": 100,
"result": "fail"
}
]
},
"Type": "Student"
}我试过像这样
var result = client.CreateDocumentQuery<dynamic>(dc.SelfLink, "SELECT s.id as id,s.Name as Name,s.Age as Age,s.section as section,s.subjects as subjects FROM students s JOIN c IN s.subjects WHERE c.result = \"pass\"").ToList();
List<Student> students = new List<Student>();
foreach(var std in result)
{
students.Add((Student)std);
} 像上面这样的东西是我得到的代码,但是即使我给pa或pa或者pass,或者p或者ass,或者作为那样,我也应该得到一些我需要的功能,比如在SQL中。
有什么解决办法吗??我需要在SQL中使用类似的功能从documentDB检索数据。
发布于 2015-01-05 18:32:53
STARTSWITH**,更新:截至 5/6/15,DocumentDB添加了一组字符串函数,包括 ** ENDSWITH**,和** CONTAINS**.请注意,大多数这些函数不会在索引上运行,而是会强制进行扫描。**
像SQL的%这样的通配符还没有在DocumentDB中实现。
请在DocumentDB's feedback forum上发表您的意见并投票支持此功能。
发布于 2015-08-27 07:37:52
在过去几个月中,引入了一些新的功能。对于你的特殊情况,我认为你可以用:
WHERE STARTSWITH(c.result, "p")https://stackoverflow.com/questions/27740398
复制相似问题