Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/design-patterns/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 选择SQL中一个字符多次出现的值_Mysql_Sql - Fatal编程技术网

Mysql 选择SQL中一个字符多次出现的值

Mysql 选择SQL中一个字符多次出现的值,mysql,sql,Mysql,Sql,让我用一个例子来解释我的问题 考虑以下列的值 City ------- Chennai Delhi Mumbai 我想要的输出是 City ------- Chennai Mumbai 当你看价值观时,“钦奈”有两个“N”,而“孟买”有两个“M” 查找满足上述条件的值的查询是什么 我正在使用MySQL,你能试试吗。如果需要,可以创建函数并接受动态值并传递给相应的函数 IF(LEN('Chennai')-LEN(REPLACE('Chennai', 'N', ''))>1 ) Sele

让我用一个例子来解释我的问题

考虑以下列的值

City
-------
Chennai
Delhi
Mumbai
我想要的输出是

City
-------
Chennai
Mumbai
当你看价值观时,“钦奈”有两个“N”,而“孟买”有两个“M”

查找满足上述条件的值的查询是什么


我正在使用MySQL,你能试试吗。如果需要,可以创建函数并接受动态值并传递给相应的函数

IF(LEN('Chennai')-LEN(REPLACE('Chennai', 'N', ''))>1 )
 Select 'Chennai'

如果城市名称只包含拉丁字符,您可以使用此处的一些逻辑,然后通过这种方式进行过滤

SELECT DISTINCT city
 FROM table1 c CROSS JOIN
(
   SELECT 0 n UNION ALL
   SELECT a.N + b.N * 5 + 1 n
     FROM 
    (SELECT 0 AS N UNION ALL SELECT 1 UNION ALL SELECT 2 UNION ALL SELECT 3 UNION ALL SELECT 4) a
   ,(SELECT 0 AS N UNION ALL SELECT 1 UNION ALL SELECT 2 UNION ALL SELECT 3 UNION ALL SELECT 4) b
    ORDER BY n
) n
  WHERE CHAR_LENGTH(city) - CHAR_LENGTH(REPLACE(LOWER(city), CHAR(97 + n.n), '')) > 1
输出:

| CITY | |---------| | Mumbai | | Chennai | |城市| |---------| |孟买| |钦奈|
下面是你所说的过滤是什么意思。你想要什么输出?我的意思是选择这些类型的values@Dineshbabu您能告诉我们确切的条件是指任何字符串重复一个字符两次或更多,如果两个字符满足条件,如
hydrabad
a两次。。d两次..实际上只是角色a很抱歉把你弄糊涂了guys@dineshbabu有帮助吗?你的问题需要更多的帮助吗?