背景は省きますが、以下の要件を満たす進数を作りたかったので調べてみました。
要件1. 各文字は必ず1桁(16進数のイメージ)
要件2. できるだけ多くの数を表現できる
要件3. SQL Serverで並び替えに使える
結論
char(177)とchar(221)の間のアイウエオを使えばorder byに使える45進数が得られる。
select char(177), char(221)
調査方法
準備
create table #tmp (val int)
insert into (val) value (1)
insert into (val) value (2)
...
insert into (val) value (500)
実験
select
val, char(val)
from
# tmp
order by val
このとき、[order by val]と[order by char(val)]で並び替えしたときに得られるレコードの順番が一致するvalの範囲で最も長く連続するものを調べました。
まとめ
アイウエオの並びが一番長そうでしたが、もっと表現力のある方法ご存知の方がいれば教えていただきたいです。

