varchar 変数内で最長一致を検索するにはどうすればよいでしょうか? たとえば、テーブル GOB には次のようなエントリがあります。
magic_word | prize
===================
sh| $0.20
sha| $0.40
shaz| $0.60
shaza| $1.50
shazam
他の引数の中で文字列を入力として受け取り (例: )、最長の一致する部分文字列を含む GOB の行の「賞品」列を返すplpgsql 関数を作成したいと思います。示されている例では、それは$1.50
magic_word の行にありますshaza
。
私が扱うことができるすべての関数形式は、ちょうど一致するビットです。エレガントなソリューションは考えられません。おそらく本当に簡単だと思いますが、頭を悩ませています。入力文字列は、別のテーブルに対するクエリの結果から派生するため、最初はわかりません。
何か案は?