SPLIT işlevi, girdi dizesini source belirtilen ayırıcı delimiter ile böler. İsteğe bağlı trimTailEmpty parametresi, sondaki boş dizelerin korunup korunmayacağını belirtir. İşlev, ARRAY<STRING> türünde bir değer döndürür.
Söz dizimi
ARRAY<STRING> SPLIT(STRING <source>, STRING <delimiter>[, BOOLEAN <trimTailEmpty>])
-- Standard example.
-- Returns ["a","b","c"].
SELECT SPLIT('a,b,c', ',');
Parametreler
source: Zorunludur. Bölünecek dize. Veri türü STRING'dir.
delimiter: Zorunludur. Dizeyi bölmek için kullanılan ayırıcı. Bu parametre düzenli ifadeleri destekler. Veri türü STRING'dir.
trimTailEmpty: İsteğe bağlıdır. Sondaki boş dizelerin korunup korunmayacağını belirtir. Varsayılan değer
truedeğeridir. Bu parametreyifalseolarak ayarlarsanız sondaki boş dizeler korunur. Veri türü BOOLEAN'dır.
Dönüş değeri
ARRAY<STRING> türünde bir değer döndürür.
Örnekler
-
Örnek 1: Bir dizeyi virgül kullanarak bölme.
-- Returns ["a","b","c"]. SELECT SPLIT('a,b,c', ','); -
Örnek 2: Ayırıcının mevcut olmadığı durumları işleme.
-- Returns ["a,b,c"]. SELECT SPLIT('a,b,c', ':'); -
Örnek 3: Ardışık ayırıcıları işleme. Bu işlem boş bir dize öğesi oluşturur.
-- Returns ["a","","b"]. SELECT SPLIT('a,,b', ','); -
Örnek 4: Çok karakterli bir ayırıcı kullanma.
-- Returns ["a","b","c"]. SELECT SPLIT('a::b::c', '::'); -
Örnek 5: Sondaki boş dizeleri koruma.
-- By default, trailing empty strings are not returned. -- Returns ["a","b","c"]. SELECT SPLIT('a,b,c,,', ','); -- Return trailing empty strings. -- Returns ["a","b","c","",""]. SELECT SPLIT('a,b,c,,', ',', false); -
Örnek 6: Ayırıcı olarak kaçış karakteri veya özel karakter kullanma.
-- Split by a line feed. -- Returns ["hello","world"]. SELECT SPLIT('hello\nworld', '\n'); -- Split by a tab character. -- Returns ["a","b","c"]. SELECT SPLIT('a\tb\tc', '\t'); -- Split by a carriage return. -- Returns ["line1","line2"]. SELECT SPLIT('line1\rline2', '\r'); -- Escape a backslash. -- Returns ["a","b","c"]. SELECT SPLIT('a\\b\\c', '\\\\'); -
Örnek 7: NULL girdileri işleme.
-- If any parameter is NULL, the function returns NULL. -- Returns NULL. SELECT SPLIT(NULL, ','); -- Returns NULL. SELECT SPLIT('a,b,c', NULL); -- Returns NULL. SELECT SPLIT('a,b,c', ',', NULL);
İlgili işlevler
SPLIT bir dize işlevidir. Dizelerde arama yapmak ve dize biçimlerini dönüştürmek için kullanabileceğiniz diğer işlevler hakkında bilgi edinmek için bkz. Dize işlevleri.