Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Bir belgenin sorgu tarafından döndürülen sonuçlara eklenip eklenmediğini belirleyen koşullar WHERE yan tümcesi tarafından belirtilir. En yüksek düzeyde, WHERE yan tümcesi söz diziminin iki bölümü vardır:
...WHERE [<group_aliases>] <search_condition>
...WHERE ReuseWhere(<WHEREID>)
Yan tümcesinin isteğe bağlı <group_alias> bölümü, bir veya daha fazla sütundan oluşan bir gruba diğer ad atayarak karmaşık sorguları basitleştirir. Bu, URL'ler tarafından belirtilen birden çok sütunda aynı bilgileri arayan karmaşık sorguların okunabilirliğini artırabilir. Grup diğer adları hakkında daha fazla bilgi için bkz. WITH -- AS Grup Diğer Adı Koşulu.
WHERE yan tümcesinin<>arama koşulu, arama için eşleşen ölçütleri belirten bir veya daha fazla arama koşuludur. Arama koşulu, bazı değerlerle ilgili bazı olguları onaylayan ifadelerdir.
Bir arama koşulunun sonucu, belge belirtilen arama koşullarını karşılıyorsa TRUE Boole değeri veya uygun değilse FALSE . Sonuç TRUE ise, belge döndürülür. Sonuç FALSE ise, belge döndürülmedi. Microsoft Windows Search sorgusunda döndürülen belgelere, arama koşullarına ne kadar uygun olduklarına göre derece değerleri atanır. Sorgu arama koşullarının her biri, döndürülen derece değerlerini değiştirmeyi destekleyen bir RANKBY yan tümcesi içerebilir.
ReuseWhere işlevi aynı arama koşullarından bazılarını kullanan birden çok sorguyu daha verimli hale getirir. Sorgudaki WHERE yan tümcesi, sorguda eşleşen öğe kümesini belirtir. Sonraki sorgular, yeni sorgu WHERE yan tümcesindeki ReuseWhere işlevini kullanarak önceki değerlendirme için gerçekleştirilen çalışmayı paylaşabilir.
Arama koşulu
Arama koşulu, kullanıcının ne aradığınızı açıklayan bir veya daha fazla koşuldan veya arama koşulundan oluşur (örneğin, WHERE System.DateCreated >'2006-04-19'). Arama önkoşulları VE , VEYAmantıksal işleçler kullanılarak veya DEĞİlkullanılarak birleştirilebilir. İsteğe bağlı birli işleç DEĞİl yalnızca VE ile kullanılabilir ve yalnızca bir koşulun veya arama koşulunun mantıksal değerini olumsuzlaştırmak için kullanılabilir. Mantıksal terimleri gruplandırmak ve iç içe kullanmak için parantez kullanabilirsiniz.
Aşağıdaki tabloda mantıksal işleçler için öncelik sırası gösterilmektedir.
| Sipariş (öncelik) | Mantıksal işleç |
|---|---|
| İlk (en yüksek) | DEĞİl |
| Saniye | VE |
| Üçüncü (en düşük) | VEYA |
Aynı türdeki mantıksal işleçler ilişkilendirilebilirdir ve belirtilen hesaplama sırası yoktur. Örneğin, (A AND B) AND (C VE D) AND (B AND C) mantıksal sonuçta değişiklik olmadan hesaplanabilir (A AND D).
Önemli
Yanlış: WHERE NOT CONTAINS ('computer')
Doğru: WHERE CONTAINS ('software') VE CONTAINS DEĞİl ('computer')
Karmaşık sorgularda, bazı sütunlardaki eşleşmelere diğerlerinden daha fazla vurgu eklemek isteyebilirsiniz. Örneğin, "yazılım tasarımını" tartışan belgeleri ararken, belge başlığında arama terimini bulmak, belge metnindeki sözcükleri tek tek bulmaktan daha iyi bir eşleşme olabilir. Belgelerin bu şekilde derecesini etkilemek için, Microsoft Windows Search sorgu dili arama koşullarının ağırlıklarını belirlemeyi destekler. Sütun ağırlığı hakkında daha fazla bilgi için bkz. CONTAINS Koşul ve FREETEXT Koşulu.
Windows Search'te üç arama koşulu grubu vardır: tam metin, tam metin olmayan ve klasör derinliği aramaları. Tam metin arama önkoşulları genellikle içeriğin, başlığın ve diğer sütunların anlamıyla eşleşip dil eşleştirmeyi destekler (örneğin, alternatif sözcük formları, tümcecikler ve yakınlık araması). Buna karşılık, tam metin olmayan arama önkoşulları belirtilen sütunların değeriyle eşleşir ve özel dil işleme içermez, ancak bazı durumlarda karakter tabanlı desen eşleştirmesi sunar. Klasör derinliği önkoşulları, arama kapsamını belirtilen bir yolla kısıtlar.
Not
Tam metin olmayan bir koşul söz konusu belge için DOĞRU değerlendirildiğinden sorgu bir belge döndürürse, derece değeri 1000 olarak hesaplanır. rank zorlama işlevini kullanarak derece değerini değiştirebilirsiniz.
Aşağıdaki tablolarda tam metin, tam metin olmayan ve klasör derinliği arama önkoşulları açıklanmaktadır.
| Tam metin koşulu | Açıklama |
|---|---|
| IÇERİR | Belge metni sütunlarında (başlık, içerik gibi) terimler için karmaşık aramaları destekler. Arama terimlerinin ekli formlarını arayabilir, terimlerin yakınlıklarını test edebilir ve mantıksal karşılaştırmalar yapabilir. Arama terimleri joker karakter içerebilir. |
| FREETEXT | Arama tümceciğinin anlamıyla eşleşen belgeleri arar. İlgili sözcükler ve benzer tümcecikler eşleşir ve sıralama sütunu, belgenin arama tümceciğiyle ne kadar yakın eşleşeceğini temel alarak hesaplanır. Arama terimleri joker karakter içeremez. |
| Tam metin olmayan koşul | Açıklama |
|---|---|
| GİBİ | Sütun değerleri, joker karakterlerle basit desen eşleştirme kullanılarak karşılaştırılır. |
| Değişmez Değer Karşılaştırması | Sütun değerleri dize, tarih, zaman damgası, sayısal ve diğer değişmez değerlerle karşılaştırılır. Bu koşul eşitliği ve büyüktür ve küçüktür gibi eşitsizlikleri destekler. |
| Çok Değerli (DIZI) Karşılaştırmaları | Birden çok değerli sütunlar, birden çok değerli değişmez değer dizisiyle karşılaştırılır. |
| NULL | Belge için tanımlanmamış sütun değerleri, NULL koşulu kullanılarak algılanabilir. |
| Klasör Derinliği | Açıklama |
|---|---|
| KAPSAM | Belirli bir klasör ve tüm alt klasörler dahil olmak üzere belirtilen yolun derin bir geçişini gerçekleştirir. |
| DİZİN | Yalnızca belirli bir klasörde arama yaparak belirtilen yolun sığ bir geçişini gerçekleştirir. |
Örnekler
WHERE yan tümcesinin örnekleri için, önceki tabloda bağlantılı tek tek koşul konularına bakın.
İlgili konular
-
Başvuru
-
SQL Söz Dizimini Ara Genel Bakış
-
kavramsal