2016-11-24 2 views
0

dba_tablesからテーブル名をフェッチするクエリが必要ですが、シリアル番号を割り当てる必要があります(1.2.3 ...をテーブル名のプレフィックスとして繰り返します)。 )dba_tableからテーブル名をフェッチするクエリ(プレフィックスとして1.2.3 ...を繰り返す)

1:table_name1 
2:table_name2 
3:table_name3 
1:table_name4 
2:table_name5 
3:table_name6 

などです。

+0

'ROW_NUMBER()'頭に浮かぶ - しかし、どのような条件は、それが1から再起動する原因は? –

答えて

1

あなたが使用することができ、あなたがテーブル名で注文したいと仮定すると:

select case when mod(row_number() over (order by table_name), 3) = 0 
     then 3 
     else 
     mod(row_number() over (order by table_name), 3) 
     end case, 
     table_name 
from dba_tables 
+0

ありがとうございます...その作業 – Rax

関連する問題