【SQL】促音・拗音を区別せず検索する

 ■ はじめに

促音・拗音、つまり小さい文字
「ぁ」「ぃ」「ぅ」「ぇ」「ぉ」「っ」「ゃ」「ゅ」「ょ」
を大きい文字と区別せずに、検索する方法を考える

目次

【1】案1:正規表現を利用する
【2】案2:検索用の項目を追加

 【1】案1:正規表現を利用する

 * 正規表現の[Xx]を利用する

 サンプル

SELECT * FROM TestTable WHERE Name LIKE '%カイシ[ャヤ]'

 【2】案2:検索用の項目を追加

1)検索用の項目を追加し、大きい文字(又は小さい文字)で統一する
2)検索された場合、検索文字を大きい文字(又は小さい文字)に変換し、
  新規追加した検索用の項目

 利点

 * 案1と比べると、パフォーマンス(検索速度)は優れているかも

 欠点

 * DB変更が必要で、又、その分のデータを余分に保持しておかなければならない

関連記事

過去直近データを取得するには
https://dk521123.hatenablog.com/entry/2016/01/05/234938
最新日付データを取得するには
https://dk521123.hatenablog.com/entry/2014/10/09/004105
期間が重なるデータを取得するには
https://dk521123.hatenablog.com/entry/2011/12/17/025502
順位付け・ランキング ~ RANK / DENSE_RANK ~
https://dk521123.hatenablog.com/entry/2012/08/15/225233
初めの数文字が一致してたら同一データと見なすSQLを考える
https://dk521123.hatenablog.com/entry/2018/04/11/225229
複数の集計を1回のSQL文で行う方法を考える
https://dk521123.hatenablog.com/entry/2018/04/12/210108