Lookup() zaten yüklü durumdaki bir tablonun içine bakar ve match_field_name alanında match_field_value değerinin ilk oluşuna karşılık gelen field_name değerini döndürür. Bu tablo, mevcut tablo ya da daha önce yüklenmiş başka bir tablo olabilir.
Döndürülen değerin gerekli olduğu alanın adı. Giriş değeri bir dize (örneğin, tırnak içine alınmış bir değişmez değer) olarak verilmelidir.
match_field_name
match_field_value öğesinin aranacağı alanın adı. Giriş değeri bir dize (örneğin, tırnak içine alınmış bir değişmez değer) olarak verilmelidir.
match_field_value
match_field_namealanında aranacak değer.
table_name
Değerin aranacağı tablonun adı. Giriş değeri bir dize (örneğin, tırnak içine alınmış bir değişmez değer) olarak verilmelidir.
table_name atlandığı takdirde geçerli tablo kabul edilir.
Bilgi notuTırnak içinde olmayan bağımsız değişkenler geçerli tabloya referansta bulunur. Diğer tablolara referansta bulunmak için bağımsız değişkeni tek tırnak içine alın.
Sınırlamalar:
Tablo, sıralamanın tam olarak tanımlanmadığı birleştirmeler gibi karmaşık işlemlerin bir sonucu olmadıkça, aramanın yapıldığı sıra yükleme sırasıdır. Hem field_name hem de match_field_name öğesi, table_name öğesi ile belirtilen aynı tablodaki alanlar olmalıdır.
Herhangi bir eşleşme bulunamazsa NULL sonucu döndürülür.
Komut dosyası
Aşağıdaki kod örneğini oluşturmak için veri yükleme düzenleyicisinde aşağıdaki verileri satır içi yükleme olarak yükleyin.
ProductList:
Load * Inline [
ProductID|Product|Category|Price
1|AA|1|1
2|BB|1|3
3|CC|2|8
4|DD|3|2
] (delimiter is '|');
OrderData:
Load *, Lookup('Category', 'ProductID', ProductID, 'ProductList') as CategoryID
Inline [
InvoiceID|CustomerID|ProductID|Units
1|Astrida|1|8
1|Astrida|2|6
2|Betacab|3|10
3|Divadip|3|5
4|Divadip|4|10
] (delimiter is '|');
Drop Table ProductList;
Lookup() fonksiyonu, OrderData tablosunu oluşturmak için kullanılır. Üçüncü bağımsız değişkeni ProductID olarak belirtir. Bu, tek tırnak içine alınmasıyla gösterildiği üzere ProductList içinde ikinci bağımsız değişkende ('ProductID') değeri aranacak alandır.
Fonksiyon, CategoryID olarak yüklenen 'Category' değerini döndürür (ProductList tablosunda).
drop deyimi, gerekli olmadığı için ProductList tablosunu veri modelinden siler; geriye OrderData sonuç tablosu kalır.
Bilgi notuLookup() fonksiyonu esnektir ve daha önce yüklenmiş herhangi bir tabloya erişim sağlayabilir. Bununla birlikte, Applymap() fonksiyonu ile karşılaştırıldığında yavaştır.