CASE (Entity SQL)
Sonucu belirlemek için bir ifade kümesini Boolean
değerlendirir.
Söz dizimi
CASE
WHEN Boolean_expression THEN result_expression
[ ...n ]
[
ELSE else_result_expression
]
END
Bağımsız değişkenler
n
Birden çok WHEN Boolean_expression
THEN result_expression
yan tümcesi kullanılabileceğini gösteren bir yer tutucudur.
SONRA result_expression
ifadesi olarak değerlendirildiğinde Boolean_expression
true
döndürülür. result expression
herhangi bir geçerli ifadedir.
ELSE else_result_expression
Karşılaştırma işlemi olarak değerlendirilmezse true
ifade döndürülür. Bu bağımsız değişken atlanırsa ve hiçbir karşılaştırma işlemi olarak değerlendirilmezse true
, BÜYÜK/KÜÇÜK HARF null döndürür. else_result_expression
herhangi bir geçerli ifadedir. ve result_expression
veri türlerinin else_result_expression
aynı olması veya örtük bir dönüştürme olması gerekir.
Boolean
NE ZAMAN Boolean_expression
Aranan BÜYÜK/KÜÇÜK HARF biçimi kullanıldığında ifade değerlendirilir. Boolean_expression
herhangi bir geçerli Boolean
ifadedir.
Dönüş Değeri
ve isteğe bağlı else_result_expression
içindeki tür result_expression
kümesinden en yüksek öncelik türünü döndürür.
Açıklamalar
Entity SQL case ifadesi Transact-SQL case ifadesine benzer. Hangi ifadenin uygun sonucu vereceğini belirlemek üzere bir dizi koşullu test yapmak için case ifadesini kullanırsınız. Bu durum ifadesi biçimi, doğru sonuçta elde edilen ifadeyi belirlemek için bir veya daha fazla Boolean
ifade dizisi için geçerlidir.
CASE işlevi, her WHEN yan tümcesini belirtilen sırada değerlendirir Boolean_expression
ve olarak değerlendirilen true
ilk Boolean_expression
yan tümcenin döndürürresult_expression
. Kalan ifadeler değerlendirilmez. değeri belirtilmezse Boolean_expression
true
, Veritabanı Altyapısı bir ELSE yan tümcesi belirtilirse veya ELSE yan tümcesi belirtilmezse null değeri döndürür else_result_expression
.
CASE deyimi çoklu küme döndüremez.
Örnek
Aşağıdaki Entity SQL sorgusu, sonucu belirlemek üzere bir Boolean
dizi ifadeyi değerlendirmek için CASE ifadesini kullanır. Sorgu AdventureWorks Satış Modeli'ni temel alır. Bu sorguyu derlemek ve çalıştırmak için şu adımları izleyin:
Nasıl yapılır: PrimitiveType Sonuçları Döndüren Bir Sorgu Yürütme bölümündeki yordamı izleyin.
Aşağıdaki sorguyu yöntemine
ExecutePrimitiveTypeQuery
bağımsız değişken olarak geçirin:
CASE WHEN AVG({@score1,@score2,@score3}) < @total THEN TRUE ELSE FALSE END