SQL:如何查询得到不包含3个字母'r'的STRING?

SQL: How can I make a query to get the STRING that do not contain 3 letters 'r'?

示例:

wordrr -> 不正确 因为它有 3 'r'

字 --> 正确 因为它没有 3 'r'

您想获取指定列中 3 次不包含字符“r”的行。

这里是计算字符“r”出现次数的代码。

SELECT (LENGTH(ColName) - LENGTH(REPLACE(ColName, 'r', '')))  as "R Count" from TableName;

注意:如果 LENGTH 不起作用,请尝试使用 LEN。

现在为了获取字符“r”不出现 3 次或更多次的行

SELECT * from TableName where (LENGTH(ColName) - LENGTH(REPLACE(ColName, 'r', '')))  < 3 ;

您还可以使用:

SELECT * from TableName where (char_length(ColName) - char_length (REPLACE (ColName, 'r', '')))  <= 3 ;