単一の文字の複数のインスタンスで結果を表示できるかどうかを調べたいと思っています。例えば、6文字以上の "、"文字を持つ行だけを表示したい場合などです。行内の特定の文字のカウント - SQL
例:I、午前は、アウト、フィギュアに、これをしようと、クエリ
は結果に表示されるでしょうが、6未満で任意の行「は、」さんは表示されませんでした。
単一の文字の複数のインスタンスで結果を表示できるかどうかを調べたいと思っています。例えば、6文字以上の "、"文字を持つ行だけを表示したい場合などです。行内の特定の文字のカウント - SQL
例:I、午前は、アウト、フィギュアに、これをしようと、クエリ
は結果に表示されるでしょうが、6未満で任意の行「は、」さんは表示されませんでした。
一つの方法は、like
を使用しています。
select t.*
from t
where col like '%,%,%,%,%,%,%';
これは、任意のデータベースで動作するはずです。ここで
は,
6回以上を持っている文字列を表示するようにlength
とreplace
を使用しての方法です:
select * from mytable where length(mycolumn) - length(replace(mycolumn, ",", "")) >= 6
使用しているデータベースとの質問にタグを付けてください。 –
[特定の文字が文字列内に表示される回数]の重複可能性があります(http://stackoverflow.com/questions/9789225/number-of-times-a-particular-character-appears-in-a-string) – gemr1423