Aracılığıyla paylaş


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_expressiontruedöndürülür. result expression herhangi bir geçerli ifadedir.

ELSE else_result_expression Karşılaştırma işlemi olarak değerlendirilmezse trueifade 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_expressioniç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 trueilk Boolean_expression yan tümcenin döndürürresult_expression. Kalan ifadeler değerlendirilmez. değeri belirtilmezse Boolean_expressiontrue, 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:

  1. Nasıl yapılır: PrimitiveType Sonuçları Döndüren Bir Sorgu Yürütme bölümündeki yordamı izleyin.

  2. 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

Ayrıca bkz.