Bazı durumlarda gelen değeri virgüllere ayırarak string şeklinde parametre geçeriz ki içeride virgüllerinden ayırarak bir dizi elde ederiz. Bunun C# ve JavaScript’deki karşılığı Split fonksiyonudur. Peki bu olay Oracle’da nasıl ?
Bu makale ile regexp_substring fonksiyonunun kullanımını anlatacağım. ( 10g ve üzeri için geçerlidir.)
Örneğin elimizde ‘1,2,3,4,5’ şeklinde bir string olsun. Bu string’i select içinde virgüllerine ayırıp 1,2,3,4,5 değerleri için kullanma gereksinimi duyduk.
select regexp_substr('1,2,3,4','[^,]+', 1, level) from dual connect by regexp_substr('1,2,3,4', '[^,]+', 1, level) is not null;Bu şekilde ‘1,2,3,4’ şekilde yazan yere parametre geçerek istediğiniz bir tabloda sorgu yapabilirsiniz.