makaleler / Veritabanı / Oracle ListTagg ve Regex_Replace Örneği

Oracle ListTagg ve Regex_Replace Örneği

14.01.2016 16:57:49

Oracle Veritabanında ListTagg ve Regex_Replace kullanımı örneği

Farklı veriler içeren bir alanın tek satırda ayrıca aynı verilerin birleştirilmiş olarak getirmesini sağlayan bir örnek yapalım. Aşağıda örnek alanımız ADI dır.


ADI
  • ELECTRIC EQUIPMENT
  • 1
  • DENEM
  • ELECTRIC EQUIPMENT
  • ELECTRIC EQUIPMENT 1

SQL imizde LISTAGG fonksiyonu ilgili alanları gruplayarak aralarına vürgül koyar ve tek satıra alır. REGEX_REPLACE fonksiyonumuz da birden fazla aynı olan kaydı uniqleştirir.


SELECT
(
regexp_replace(
LISTAGG(ADI,',') WITHIN GROUP (ORDER BY ADI) 
, '(^|,)([^,]+,)(.*?,)?\2+','\1\2\3')
)
FROM TEST
yazar husonet

Yorumlar

Bu içerik için sizde yorum yapabilirsiniz!
anasayfa | makaleler | haberler | dosyalar | linkler | hakkımızda