質問: 'テスト'; -- (A) select * from person where name like '%テスト%'; -- (B) ``` (A) では想定通り、id=1, id=2 の両方が抽出できました。 しかし、(B) では id=1 しか抽出できませんでした。 ### バージョン情報 Firebird2.5 (32bit版, Classic Server binary) ### 参考にしたURL * https://firebirdsql.org/refdocs/langrefupd25-collations.html * https://firebirdsql.org/file/documentation/reference_manuals/fblangref25-en/html/fblangref25-ddl-collation.html * http://tech.firebird.gr.jp/firebird/site_rsrc/images/0/rlsnotes25.pdf
回答: Firebirdは触ったことも無いので、外していたらすみません。 以下ではどうでしょうか。 ``` select * from person where name collate UNICODE_CI_AI like '%テスト%' ``` 追記 よく考えてみると大文字/小文字の識別が無いだけで全角/半角は同じにはならない気もします。 以下ではどうでしょうか。 ``` select * from person where upper(name) like '%テスト%' ```