LOOKUPVALUE
Şunlar için geçerlidir: Hesaplanmış sütun
Hesaplanan tablo
Ölçü
Görseli hesaplaması
Bir veya daha fazla arama koşulu tarafından belirtilen tüm ölçütleri karşılayan satırın değerini döndürür.
Sözdizimi
LOOKUPVALUE (
<result_columnName>,
<search_columnName>,
<search_value>
[, <search2_columnName>, <search2_value>]…
[, <alternateResult>]
)
Parametreler
Süre | Tanım |
---|---|
result_columnName | Döndürmek istediğiniz değeri içeren mevcut bir sütunun adı. Bu bir ifade olamaz. |
search_columnName | Var olan bir sütunun adı. result_columnName ile aynı tabloda veya ilişkili bir tabloda olabilir. Bu bir ifade olamaz. Birden çok search_columnName ve search_value çifti belirtilebilir. |
search_value | search_columnName içinde aranacak değer. Birden çok search_columnName ve search_value çifti belirtilebilir. |
alternateResult | (İsteğe bağlı) result_columnName bağlamı sıfıra veya birden fazla ayrı değere filtrelendiğinde döndürülen değer. Belirtilmezse işlev, result_columnName sıfır değerlere filtrelendiğinde BLANK veya result_columnName bağlamında birden fazla ayrı değer olduğunda hata döndürür. |
Dönüş değeri
Tüm search_columnName ve search_value çiftlerinin tam eşleşmeye sahip olduğu satırdaki result_columnName değeri.
Tüm arama değerlerini karşılayan bir eşleşme yoksa BLANK veya alternateResult (belirtildiyse) döndürülür. Başka bir deyişle, ölçütlerden yalnızca bazıları eşleşiyorsa işlev arama değeri döndürmez.
Arama değerleriyle eşleşen birden çok satır varsa ve bu satırların result_columnName değerleri aynıysa, bu değer döndürülür. Ancak, result_columnName farklı değerler döndürürse bir hata veya alternateResult (belirtildiyse) döndürülür.
Açıklamalar
Sonuç sütununu içeren tablo ile arama sütunlarını içeren tablolar arasında bir ilişki varsa, çoğu durumda LOOKUPVALUE yerine RELATED işlevini kullanmak daha verimlidir ve daha iyi performans sağlar.
Birden çok search_columnName ve search_value çifti belirtilebilir.
search_value ve alternateResult parametreleri, işlev arama tablosunun satırları arasında yinelemeden önce değerlendirilir.
LOOKUPVALUE tarafından döndürülen bir hatayı yakalamak için ISERROR veya EĞERHATA işlevlerini kullanmaktan kaçının. İşleve yapılan bazı girişler tek bir çıkış değeri belirlenemediğinde hatayla sonuçlanırsa, alternateResult parametresi sağlamak hatayı işlemek için en güvenilir ve en yüksek performanslı yoldur.
AlternateResult parametresi, Power Pivot hesaplanmış sütununda belirtilirse bir hata döndürür.
Bu işlev, hesaplanan sütunlarda veya satır düzeyi güvenlik (RLS) kurallarında kullanıldığında DirectQuery modunda kullanılmak üzere desteklenmez.
Örnek 1
Bu örnekte LOOKUPVALUE, siparişin düzenlendiği gün sipariş için ödeme yapmak için kullanılan para birimi için Ortalama Fiyat araması yapmak için kullanılır:
Exchange Rate =
LOOKUPVALUE (
'Currency Rate'[Average Rate],
'Currency Rate'[CurrencyKey], [CurrencyKey],
'Currency Rate'[DateKey], [OrderDateKey]
)
Doğru tarih ve para birimi için Ortalama Fiyatı bulmak için hem Sipariş Tarihi hem de Para Birimi gereklidir. OrderDateKey ve CurrencyKey, Para Birimi Fiyatı tablosunda Ortalama Fiyat'ı aramak için kullanılan anahtarlardır.
Yerel para birimi cinsinden Satış Tutarı'nı hesaplamak için Döviz Kurunu kullanabilirsiniz:
Sales Amount Local Currency = [Sales Amount] * [Exchange Rate]
Örnek 2
Bu örnekte, Sales tablosunda tanımlanan aşağıdaki hesaplanmış sütun, Sales Order tablosundan kanal değerlerini döndürmek için LOOKUPVALUE işlevini kullanır.
CHANNEL =
LOOKUPVALUE (
'Sales Order'[Channel],
'Sales Order'[SalesOrderLineKey],
[SalesOrderLineKey]
)
Ancak, bu durumda, Satış Siparişi ve Satış tabloları arasında bir ilişki olduğundan RELATED işlevini kullanmak daha verimlidir.
CHANNEL = RELATED('Sales Order'[Channel])