FROM - Cosmos DB'de sorgu dili (Azure ve Doku'da)

FROM yan tümcesi bir sorgu için veri kaynağını tanımlar.

Sözdizimi

FROM <from_specification>

<from_specification> ::= <from_source> {[ JOIN <from_source>][,...n]}
<from_source> ::= <container_expression> [[AS] input_alias] | input_alias IN <container_expression>
<container_expression> ::= ROOT | container_name | input_alias | <container_expression> '.' property_name | <container_expression> '[' "property_name" | array_index ']'

Arguments

Description
from_source Diğer adla veya diğer ad olmadan bir veri kaynağı belirtir.
AS input_alias input_alias temel kapsayıcı ifadesi tarafından döndürülen bir değer kümesi olduğunu belirtir.
input_alias IN input_alias, temel kapsayıcı ifadesi tarafından döndürülen her dizinin tüm dizi öğeleri üzerinde yinelenerek elde edilen değer kümesini temsil etmesi gerektiğini belirtir.
container_expression Öğeleri almak için kullanılacak kapsayıcı ifadesini belirtir.
ROOT Öğenin varsayılan, şu anda bağlı olan kapsayıcıdan alınması gerektiğini belirtir.
container_name Öğenin sağlanan kapsayıcıdan alınması gerektiğini belirtir.
input_alias Öğenin sağlanan diğer ad tarafından tanımlanan diğer kaynaktan alınması gerektiğini belirtir.
<container_expression> '.' property_name öğenin property_name özelliğine erişilerek alınması gerektiğini belirtir.
<container_expression> '[' "property_name" | array_index ']' Öğenin, belirtilen kapsayıcı ifadesi tarafından alınan tüm öğeler için property_name özelliğine veya array_index dizi öğesine erişilerek alınması gerektiğini belirtir.

Dönüş türleri

Belirtilen kaynaktan öğe kümesini döndürür.

Örnekler

Bu bölüm, bu sorgu dili yapısının nasıl kullanılacağına örnekler içerir.

Kapsayıcı diğer adıyla FROM yan tümcesi

Bu örnekte, FROM yan tümcesi geçerli kapsayıcıyı kaynak olarak belirtmek, benzersiz bir ad vermek ve ardından diğer ad kullanmak için kullanılır. Diğer ad daha sonra sorgu sonuçlarında belirli alanları yansıtmak için kullanılır.

SELECT VALUE 
  p.name
FROM
  products p
[
  "Joller Kid's Jacket",
  "Codlier Kid's Jacket",
  ...
]

Kaynak olarak alt kök ile FROM yan tümcesi

Bu örnekte yan tümcesi, FROM kaynağı daha küçük bir alt kümeye de azaltabilir. Her öğede yalnızca bir alt ağacı listelemek için alt kök kaynak olabilir. Bir dizi veya nesne alt kökü kaynak olarak kullanılabilir.

SELECT VALUE
  s
FROM
  products.sizes s
[
  {
    "key": "65",
    "description": "6.5",
    "order": 0
  },
  {
    "key": "75",
    "description": "7.5",
    "order": 1
  },
  ...
]

Açıklamalar

  • (ler) içinde sağlanan veya çıkarılacak tüm diğer adların <from_source>benzersiz olması gerekir.
  • Kapsayıcı ifadesi özelliklere veya dizi öğelerine erişiyorsa ve bu değer yoksayılır ve daha fazla işlenmez.
  • Kapsayıcı ifadesi kapsayıcı kapsamına alınmış veya öğe kapsamına alınmış olabilir.
  • Kapsayıcı ifadesinin temel kaynağı veya container_nameise, bir ifade kapsayıcı kapsamlıdırROOT. Böyle bir ifade doğrudan kapsayıcıdan alınan bir öğe kümesini temsil eder ve diğer kapsayıcı ifadelerinin işlenmesine bağımlı değildir.
  • Kapsayıcı ifadesinin temel alınan kaynağı sorguda daha önce tanıtıldıysa, ifade öğe kapsamlıdır input_alias . Böyle bir ifade, kapsayıcı ifadesi değerlendirilerek elde edilen bir öğe kümesini temsil eder. Bu değerlendirme, diğer ad kapsayıcısıyla ilişkili kümeye ait her öğenin kapsamında gerçekleştirilir. Elde edilen küme, temel alınan kümedeki öğelerin her biri için kapsayıcı ifadesi değerlendirilerek elde edilen kümelerin birleşimidir.