翻訳エンジンテスト中2

B-TREEかな?

select * from ja_en where src = 'こんにちは、これ%' limit 1
select * from ja_en where src = 'こんに%' limit 1
select * from ja_en where src = 'こんにちは%' limit 1
select * from ja_en where src = 'こんにちは、%' limit 1
select * from ja_en where src = 'こんにちは' limit 1

前方一致かな?

select * from ja_en where src = 'こ%' limit 1
select * from ja_en where src = 'こん%' limit 1
select * from ja_en where src = 'こんに%' limit 1
select * from ja_en where src = 'こんにち%' limit 1
select * from ja_en where src = 'こんにちは%' limit 1
select * from ja_en where src = 'こんにちは、%' limit 1
select * from ja_en where src = 'こんにちは' limit 1

やっぱりB-TREEがコストは最速かなぁ。
でも実際は文字数少ない単語が多いことが予想されて、普通は一単語10文字くらい、メッセージがあったとしても20文字くらいだろうと。
しかも専用翻訳の場合、通常は置換対象ワードは「現金」と「出納簿」の2ワードに分けて辞書構成することはなくて、「現金出納簿」の1ワードごとで持つんだよな。


案外今回のケースに限れば、後方からばかみたいに完全一致を探すSQL投げる方が最速な気もするけど、どうなんだろね。