DocumentDB SQL com ARRAY_CONTAINS

Estou brincandohttps://www.documentdb.com/sql/demo, o que me permite consultar documentos de exemplo que se parecem com:

{
  "id": "19015",
  "description": "Snacks, granola bars, hard, plain",
  "tags": [
    {
      "name": "snacks"
    }
  ],
  "version": 1,
  "isFromSurvey": false,
  "foodGroup": "Snacks",
  "servings": [
    {
      "amount": 1,
      "description": "bar",
      "weightInGrams": 21
    }
  ]
}

Estou confuso sobreARRAY_CONTAINS(). Esta consulta retorna resultados:

SELECT root
FROM root 
WHERE ARRAY_CONTAINS(root.tags, { "name": "snacks" })

No entanto, esta consulta não:

SELECT root
FROM root 
WHERE ARRAY_CONTAINS(root.servings, { "description": "bar" })

O que da?

O que estou tentando obter é ilustrado por como eu escreveria a consulta se fosse C #:

var filteredDocs = docs.Where(d => d.Servings != null &&
                                   d.Servings.Length > 0 &&
                                   d.Servings.Any(s => s.Description == "bar"));

Aparece o primeiro exemplo de consulta emroot.tags funciona porque{ "name": "snacks" } é ointeira objeto noroot.tags matriz, enquanto, na segunda consulta,{ "description": "bar" } é apenasum campo noroot.servings objetos.

Como posso modificar a segunda consulta emroot.servings trabalhar apenas conhecendo a porçãodescription?

questionAnswers(4)

yourAnswerToTheQuestion