Tüm Ürünler
Search
Belge Merkezi

MaxCompute:SPLIT

Son Güncelleme:Oct 04, 2026

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 true değeridir. Bu parametreyi false olarak 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.