>>385
申し訳ありません。今は240万件の小さなデータでやっていますが、
最終的には21億レコードのテーブルを投入したいと考えていて、
そのままの形では16時間かかってもインデックス作成が出来ませんでした。

方法を模索していく過程でパーティショニングという方法に辿りつきましたが、
ここでは整数値でテーブルを分割しなくてはならないというルールがある
(日本語マニュアルではascii関数が使えることになっているが、実際には利用できなかった)
とのことで、今回の整数化という方法に至った次第です。

暗号化、文字コードを10進数に変換し横に並べていく(そのまま足してしまうと、1+2と2+1が同値になり、順番を考慮できなくなる)
方法についても検討しましたが、高度な暗号ほど長くなり、それを10進数に変えるとbigintの制限幅を大幅に越える結果となり、
文字コードを並べる方法についても、文字列が長くなれば同様のことが起こりうるため結局断念しました。