Oracle 11g 'de tablo sütunlarını veya Satır sonuçlarını yan yana yazdırma

Oracle 11g R2 'de özellikle tabloların bir tablodan diğerine insert into ile atmak üzere sütunlarını eşleştirmek istediğimiz zaman sütunların aralarında virgül konularak yan yana yazılmış halini isteyebiliriz.Bu durum ve bunun gibi sorgu sonuçlarını yan yana yazdırmak için oracle 11g 'de LISTAGG fonksiyonunu kullanabiliriz.

Aşağıdaki örnekte dba_tab_columns tablosundan istenilen tablonun sütunlarının virgül ile yan yana yazılmış halini elde edebilirsiniz.

  select table_name,LISTAGG(column_name, ',')WITHIN GROUP (ORDER BY column_id)
  Columns from dba_tab_columns where owner = 'SCHEMA' and TABLE_NAME='TABLE'
  group by table_name;

Oracle 'da bu fonksiyonlara Analytic Functions denmektedir.

Kaynaklar :https://oracle-base.com/articles/misc/analytic-functions

http://www.oracle-base.com/articles/misc/string-aggregation-techniques.php

Yorum Gönder

Daha yeni Daha eski