Bölümlenmiş bir tabloda veri içeren en büyük birinci düzey bölümün adını döndürür ve bu bölümdeki verileri okur. Bölümler alfabetik sıraya göre sıralanır.
Kullanım notları
MAX_PTyalnızca birinci düzey bölümleri değerlendirir. Birden fazla bölüm düzeyine sahip tablolar için bunun yerine standart SQL alt sorgusu kullanın.Tablodaki tüm bölümler boşsa
MAX_PThata döndürür. Bu işlevi çağırmadan önce en az bir bölümün veri içerdiğinden emin olun.OSS harici tablolar,
MAX_PTişlevini dahili tablolarla aynı davranışla destekler.-
MaxCompute
MIN_PTişlevi sunmaz. En küçük bölümü almak için aşağıdaki yöntemi kullanın:SELECT * FROM table WHERE pt = (SELECT MIN(pt) FROM table);
Sözdizimi
MAX_PT(<table_full_name>)
Parametreler
| Parametre | Gerekli | Tür | Açıklama |
|---|---|---|---|
table_full_name |
Evet | STRING | Tablonun tam adı. Tablo üzerinde okuma izniniz olmalıdır. |
Dönüş değeri
Veri içeren en büyük birinci düzey bölümün adı.
Veri içermeyen ve ALTER TABLE ile oluşturulan bölümler sonuçtan hariç tutulur.
Örnekler
En son bölümü sorgulama
tbl tablosu, her ikisi de veri içeren 20120901 ve 20120902 olmak üzere iki bölüme sahiptir.
SELECT * FROM tbl WHERE pt = MAX_PT('tbl');
Bu işlem, 20120902 bölümünden veri döndürür. Yukarıdaki ifade şuna eşdeğerdir:
SELECT * FROM tbl WHERE pt = (SELECT MAX(pt) FROM tbl);
Çok düzeyli bölümleri sorgulama
MAX_PT yalnızca birinci düzey bölümlerle çalışır. Birden fazla bölüm düzeyine sahip tablolar için standart SQL alt sorgularını kullanın:
SELECT * FROM table
WHERE pt1 = (SELECT MAX(pt1) FROM table)
AND pt2 = (SELECT MAX(pt2) FROM table WHERE pt1 = (SELECT MAX(pt1) FROM table));