DocumentDB是否支持查询中的LIKE关键字?

Jok*_*_37 28 azure azure-cosmosdb

我们LIKE可以在T-SQL中使用关键字来过滤掉记录吗?

cna*_*gle 40

关键字LIKECONTAINS.如果您有一个包含firstName属性的文档,并且您希望过滤该名称'bob',则可以通过以下方式在查询中使用它:

"SELECT * FROM c WHERE CONTAINS(c.firstName, 'bob')"

或者,如果您正在使用Linq并假设您有一个Person具有FirstName属性的类,则相同的查询将以这种方式工作:

 var dbClient = GetClient();
 var docs = dbClient.CreateDocumentQuery<Person>(Collection)
                    .Where(p => p.FirstName.Contains("bob");
Run Code Online (Sandbox Code Playgroud)

  • 同意上面的评论.如果您希望在DocumentDB查询语法中添加LIKE,请在此处进行投票:https://feedback.azure.com/forums/263030-documentdb/suggestions/6333414-implement-wildcards-when-searching (4认同)
  • Aravind链接中还有几个类似%的选项:“ * Azure Cosmos DB支持CONTAINS,** STARTSWITH和ENDSWITH **内置函数,它们等效于LIKE。 (2认同)