31 Temmuz 2012 Salı

ORACLE - Alphanumeric Sequence


AAA,AAB,AAC... şeklinde ilerleyen bir sequence için:
chr(MOD(trunc((X / 26) / 26), 26) + 65) ||
chr(MOD(trunc(X / 26), 26) + 65) ||
chr(MOD(X, 26) + 65)

X yerine sequence.nextval yaparak ilerletebilirsiniz.

Test için :
SELECT chr(MOD(trunc((LEVEL / 26) / 26), 26) + 65) ||
       chr(MOD(trunc(LEVEL / 26), 26) + 65) ||
       chr(MOD(LEVEL, 26) + 65)
FROM dual
CONNECT BY LEVEL <= 100

Hiç yorum yok:

Yorum Gönder