2017-08-01 7 views
0

私は値が別のシステムからインポートされたテーブルを持つデータベースを持っています。母音を最小母音にしてクエリを作成したい MySQLの正規表現はありますか?この ?MySQL - 母音でデータを選択する方法

select name from user where name REGEXP '^[a,e,i,o,u]${2,5}'; 

私はこのクエリで試しましたが失敗しました。

+0

最小検証データ例を示すサンプルとものと一致しなければならないと何いけないが必要です。 – gview

答えて

1

母音文字がない文字列の長さと長さの差をとって、各母音の出現を見つけます。

クエリ

select `name`, (
    length(`name`) - length(replace(lower(`name`), 'a', '')) + 
    length(`name`) - length(replace(lower(`name`), 'e', '')) + 
    length(`name`) - length(replace(lower(`name`), 'i', '')) + 
    length(`name`) - length(replace(lower(`name`), 'o', '')) + 
    length(`name`) - length(replace(lower(`name`), 'u', '')) 
) as `vowel_count` 
from `your_table_name` 
order by 2; 

Find demo here

+0

これは私にとって素晴らしい仕事でした。ありがとう!私は簡単に私の目的のためにこれを変更することができました。 – ritwik

+0

@ Wandererもう一度あなたの助けが必要ですが、私はカウント文字について同様の問題がありました。私は最小と最大範囲の唯一の文字値を取得したい。私は、これが例でうまく説明されていると思います。例 - テーブルの列は、abc123,12def、erogan44eなどのようなユーザー名です。 手順を使用せずに使用できますか?正規表現を使うべきでしょうか? – ritwik

+0

@ritwik: 'abc123'の出力は' 3'でしょうか? – Wanderer

関連する問題