2013-11-23 3 views
0

Позвольте мне объяснить, на мой вопрос с примеромзначения Выбор с более чем одно вхождение символа в SQL

Рассмотрим следующий столбец значений

City 
------- 
Chennai 
Delhi 
Mumbai 

Выходной Я хочу это

City 
------- 
Chennai 
Mumbai 

Когда вы смотрите на значения «Ченнаи», у двух «N» и «Мумбаи» есть два «М»

Что такое th е запрос, чтобы найти значение, которые удовлетворяют выше указанного условие

Я использую MySQL

+0

Что подразумевается под фильтрованием. Какой выход вы хотите? –

+0

Я хочу ВЫБРАТЬ эти типы значений –

+0

@Dineshbabu Можете ли вы сообщить нам, что точное условие означает, что любая строка, повторяющая символ дважды, должна прийти, что, если два символа удовлетворяют условию типа 'hyderabad' a дважды .. d дважды .. –

ответ

0

Может у попробовать это. Если вы хотите, вы можете создать функцию и принимает динамическое значение и перейти к соответствующей функции

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

Возможное решение, если названия городов содержат только латинские символы

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 | 

SQLFiddle demo

+0

@dineshbabu Помогло ли это? Вам нужна дополнительная помощь по вашему вопросу? – peterm

Смежные вопросы