【发布时间】:2015-02-28 16:20:38
【问题描述】:
这是示例 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 或 pas 或 pass 或 p 或 ass 或者我也应该得到一些我需要 SQL 中的 LIKE 功能的东西
有什么解决办法吗?? 我需要 SQL 中的 LIKE 功能来从 documentDB 中检索数据
【问题讨论】:
-
你的努力在哪里?
-
from f in client.CreateDocumentQuery
(dc.SelfLink) where f.subjects[0].result == "pass" select f; -
var result = client.CreateDocumentQuery
(dc.SelfLink, "SELECT s.id as id,s.Name as Name,s.Age as Age,s.section as section,s.作为科目的科目 FROM students s JOIN c IN s.subjects WHERE c.result = \"pass\"").ToList();列表 学生 = 新列表(); foreach(var std in result) { students.Add((Student)std);上面的东西是我得到的代码,但即使我给了 pa 或 pas 或 pass 或 p 或 ass 或者我也应该得到一些我需要 SQL 中的 LIKE 功能的东西 -
不要加评论,没人会这样看。将其添加到问题中。
-
感谢@mybirthname 我是新手
标签: c# search sql-like azure-cosmosdb