Azure AI Search'te OData $select söz dizimi
Azure AI Search'te $select parametresi, arama sonuçlarına eklenecek alanları belirtir. Bu makalede, $select OData söz dizimi açıklanır ve örnekler sağlanır.
Alan yolu oluşturma ve sabitler, Azure AI Search'teki OData diline genel bakış bölümünde açıklanmıştır. Arama sonucu oluşturma hakkında daha fazla bilgi için bkz . Azure AI Search'te arama sonuçlarıyla çalışma.
Sözdizimi
$select parametresi, sorgu sonuç kümesinde her belge için hangi alanların döndürüleceğini belirler. Aşağıdaki EBNF (Genişletilmiş Backus-Naur Formu), $select parametresi için dil bilgisini tanımlar:
select_expression ::= '*' | field_path(',' field_path)*
field_path ::= identifier('/'identifier)*
Etkileşimli söz dizimi diyagramı da kullanılabilir:
Dekont
EbNF'nin tamamı için bkz . Azure AI Search için OData ifade söz dizimi başvurusu.
$select parametresi iki biçimde gelir:
- Tüm alınabilir alanların döndürülmesi gerektiğini gösteren tek bir yıldız ()
*
veya - Hangi alanların döndürülmesi gerektiğini tanımlayan, alan yollarının virgülle ayrılmış listesi.
İkinci formu kullanırken, yalnızca listede alınabilir alanlar belirtebilirsiniz.
Karmaşık bir alanı alt alanlarını açıkça belirtmeden listelerseniz, tüm alınabilir alt alanlar sorgu sonuç kümesine eklenir. Örneğin, dizininizin , City
ve alt alanları olan Street
ve Country
tümü alınabilir bir Address
alanı olduğunu varsayalım. $select belirtirseniz Address
, sorgu sonuçları üç alt alanı da içerir.
Örnekler
Sonuçlara HotelId
, HotelName
, ve Rating
en üst düzey alanları ekleyin ve alt alanını Address
ekleyinCity
:
$select=HotelId, HotelName, Rating, Address/City
Örnek bir sonuç şöyle görünebilir:
{
"HotelId": "1",
"HotelName": "Secret Point Motel",
"Rating": 4,
"Address": {
"City": "New York"
}
}
Sonuçlara HotelName
en üst düzey alanı ekleyin. öğesinin Address
tüm alt alanlarını dahil edin. Koleksiyona her nesnenin Type
Rooms
ve BaseRate
alt alanlarını ekleyin:
$select=HotelName, Address, Rooms/Type, Rooms/BaseRate
Örnek bir sonuç şöyle görünebilir:
{
"HotelName": "Secret Point Motel",
"Rating": 4,
"Address": {
"StreetAddress": "677 5th Ave",
"City": "New York",
"StateProvince": "NY",
"Country": "USA",
"PostalCode": "10022"
},
"Rooms": [
{
"Type": "Budget Room",
"BaseRate": 9.69
},
{
"Type": "Budget Room",
"BaseRate": 8.09
}
]
}