Расчет количества совпадений

idencial

Одинаковый
Расчет количества совпадений

Есть некоторая таблица, например с новостями, и мне нужно посчитать сколько раз в тексте новости встречается, например, слово Монитор

Я хочу сделать это только средствами SQL, т.е

я могу сделать конечно так

PHP:
select text from news where text LIKE '%Монитор%'
Потом разобрать все строчки регами и подсчитать количество совпадений, но хочется все сделать средствами SQL

Возможно ли это?

ЗЫ.
Естественно
PHP:
select count(text) from news where text LIKE '%Монитор%'
не подойдет, т.к в text слово Монитор может встречаться несколько раз
 

young

Новичок
ИМХО нет.

Только если ты найдешь mySQL функцию которая говорит сколько раз подстрока встречается в строке
 

HEm

Сетевой бобер
если по-корявому (количество вхождений считается ограниченным), можно попробовать это:
ELT(N,str1,str2,str3,...)
Возвращает str1, если N = 1, str2, если N = 2, и так далее. Если N меньше, чем 1 или больше, чем число аргументов, возвращается NULL. Функция ELT() является дополненительной по отношению к функции FIELD():

(c) http://www.mysql.com/doc/ru/String_functions.html
а функции подсчитывающей количество вхождений шаблона я не нашел
 

idencial

Одинаковый
Только если ты найдешь mySQL функцию которая говорит сколько раз подстрока встречается в строке
Вот я и думаю, что кто-то мне такую подскажет

Если такой функции не будет, то проще в php регами все разобрать и посчитать
 
Сверху