2016-05-27 2 views
0

単一の文字の複数のインスタンスで結果を表示できるかどうかを調べたいと思っています。例えば、6文字以上の "、"文字を持つ行だけを表示したい場合などです。行内の特定の文字のカウント - SQL

例:I、午前は、アウト、フィギュアに、これをしようと、クエリ

は結果に表示されるでしょうが、6未満で任意の行「は、」さんは表示されませんでした。

+1

使用しているデータベースとの質問にタグを付けてください。 –

+0

[特定の文字が文字列内に表示される回数]の重複可能性があります(http://stackoverflow.com/questions/9789225/number-of-times-a-particular-character-appears-in-a-string) – gemr1423

答えて

0

一つの方法は、likeを使用しています。

select t.* 
from t 
where col like '%,%,%,%,%,%,%'; 

これは、任意のデータベースで動作するはずです。ここで

1

, 6回以上を持っている文字列を表示するようにlengthreplaceを使用しての方法です:

select * from mytable where length(mycolumn) - length(replace(mycolumn, ",", "")) >= 6 
関連する問題