2016-04-08 19 views
0

Sormak istiyorum, string değerini döngülemek için imleci kullanmak mümkün mü? Örneğin, benim '.txt' raporu için 3 başlık sütun vardır:ORACLE üzerinde bekletme ile sütun adı dinamik nasıl oluşturulur?

COLUMN "DATE" format a15 
COLUMN "SUBJECT" format a8 
COLUMN "CLASS" format a10 

ve sonuç gibidir:

DATE      SUBJECT    CLASS 
----------------------  ------------------  ----------------- 
08-Apr-2016     Science    10 
08-Apr-2016     Social     11 

Şimdi, sütun adı hala jenerik veya kod gömmek olduğunu. Ardından, dinamik olmak için "DATE", "SUBJECT" ve "CLASS" yerine dize değerini döndürmek istiyorum. Yani sadece veritabanına yüklenen verilere uyun.

Örneğin

: Ben bu veriler ile doldurulur tablo vardır:

TITLE_COLUMN1    TITLE_COLUMN2     TITLE_COLUMN3 
DATE      SUBJECT      CLASS 

benim sütun adı üzerinde olması TITLE_COLUMN1, TITLE_COLUMN2, TITLE_COLUMN3 değeri seçmek istiyor. Peki, daha iyi bir yol nedir? İmleç

veya

Değişken

kullanılarak

kullanarak?

Tavsiye ve yardım için teşekkürler. Eğer Sqlplus kullanıyorsanız ve yaklaşık substitution variables konuşan varsa

+1

? COLUMN ayarlarına aldırmazsanız, dinamik bir sorgu oluşturan, imleci açan ve imleç sonuçlarını yazdırmak için 'print' komutunu kullanan bir PL/SQL bloğu yazabilirsiniz. Ancak COLUMN biçimlendirme komutlarını kullanamazsınız. Eğer hedefiniz sadece bir çıktı dosyası oluşturmaksa, bir grup biçimlendirme yapmak istiyorsanız, SQL * Plus'ta ihtiyaç duyulan tüm çemberler üzerinden atlamaya çalışmak yerine 'utl_file' belki de Tom Kyte'ın SQL * Unloader'ı kullanmaya eğilimliydim. . –

cevap

0

, bunu yapabilirsiniz:

column title_column1 new_value vc1 
column title_column2 new_value vc2 
column title_column3 new_value vc3 
select title_column1,title_column2,title_column3 from test_columns; 
select &vc1,&vc2,&vc3 from test_data; 
tam olarak gerçekleştirmek için çalışıyoruz ne
+0

Merhaba, evet teşekkür ederim;) – octoberafternoon