LOOKUPVALUE
Şunlar için geçerlidir:Hesaplanan sütun
Hesaplanan tablo
Ölçü
Görsel hesaplama
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>]
)
Parametre
Terim | 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
(belirtilirse) 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
(belirtilmişse) 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
vesearch_value
çifti belirtilebilir.search_value
vealternateResult
parametreleri, işlev arama tablosunun satırları arasında yinelemeden önce değerlendirilir.LOOKUPVALUEtarafından döndürülen bir hatayı yakalamak için ISERROR veya IFERROR 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şlemenin en güvenilir ve en yüksek performanslı yoludur.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, Satış Siparişi 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, Sales Order ile Sales tabloları arasında bir ilişki olduğundan, RELATED işlevini kullanmak daha verimlidir.
CHANNEL = RELATED('Sales Order'[Channel])