Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Посчитать количество конкретных слов в тексте? / 6 сообщений из 6, страница 1 из 1
02.09.2016, 19:00
    #39302900
cha0s1
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Посчитать количество конкретных слов в тексте?
Например по запросу

SELECT * FROM `wp_posts` where post_content LIKE '%свободный%'

выводит количество строк в колонке которых содержится слово свободный, а как вывести количество слов в колонке? то есть в одной строке колонка может содержать 10 слов свободный, другая 20, мне надо получить число 30, а не количество тупо строк где такое попадается слово, такое возможно реализовать на чистом SQL? Спасибо.
...
Рейтинг: 0 / 0
02.09.2016, 19:04
    #39302907
miksoft
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Посчитать количество конкретных слов в тексте?
Как идея (сам не проверял):
Код: sql
1.
2.
SELECT SUM((LENGTH(post_content)-LENGTH(REPLACE(post_content,'свободный','')))/LENGTH('свободный'))
FROM `wp_posts`
...
Рейтинг: 0 / 0
02.09.2016, 20:23
    #39302945
cha0s1
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Посчитать количество конкретных слов в тексте?
ну нефига себе какой изврат, спасибо большое! действительно работает.
...
Рейтинг: 0 / 0
03.09.2016, 22:39
    #39303288
Ostic
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Посчитать количество конкретных слов в тексте?
miksoftКак идея (сам не проверял):
Код: sql
1.
2.
SELECT SUM((LENGTH(post_content)-LENGTH(REPLACE(post_content,'свободный','')))/LENGTH('свободный'))
FROM `wp_posts`


прокомментируйте, пожалуйста
SUM - производит арифметическую сумму всех выбранных значений данного
поля
LENGTH(post_content) - возвращают длину строки str.

LENGTH(REPLACE(post_content,'свободный','')) - здесь понятно

/LENGTH('свободный')) = /9
что-то типа цикла что ли получается? иначе SUM смысла не имеет
если post_content в LENGTH(post_content) возвращает весь текст из столбца, тогда
просто было бы (LENGTH(post_content)-LENGTH(REPLACE(post_content,'свободный',''))/9;
получается идет по полям в столбце?
...
Рейтинг: 0 / 0
03.09.2016, 22:43
    #39303289
miksoft
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Посчитать количество конкретных слов в тексте?
Osticчто-то типа цикла что ли получается? иначе SUM смысла не имеетПри отсутствии секции GROUP BY в запросе использование агрегатных функций приводит к тому, что возвращается всего одна запись (или ни одной в ряде случаев).
Osticполучается идет по полям в столбце?Причем тут поля? В запросе оно всего одно упоминается.
...
Рейтинг: 0 / 0
04.09.2016, 10:19
    #39303324
Alex_Ustinov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Посчитать количество конкретных слов в тексте?
cha0s1ну нефига себе какой изврат, спасибо большое! действительно работает.это не извращение, а самый нормальный способ
...
Рейтинг: 0 / 0
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Посчитать количество конкретных слов в тексте? / 6 сообщений из 6, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]