Подсчет вхождений подстроки в столбце MySQL
У меня есть таблица, в которой хранится информация о многих твиттах твиттера, включая текст твита и имя пользователя, который твитнул твит. Твиты содержат хэштеги (начиная с #), я хочу подсчитать количество хэштегов, которые написал конкретный пользователь:
tweet_id | tweet_text | screen_name |
--------------------------------------------------------------------------------------------
1 | #hashtag1 #otherhashtag2 #hashtag3 some more text | tweeter_user_1 |
2 | some text #hashtag1 #hashtag4 more text | tweeter_user_2 |
3 | #hashtag5 #hashtag1 @not a hashtag some#nothashtag | tweeter_user_1 |
4 | #hashtag1 with more text | tweeter_user_3 |
5 | #otherhashtag2 #hashtag3,#hashtag4 more text | tweeter_user_1 |
Если бы я посчитал хэштеги tweeter_user_1, я ожидаю получить результат 8, если бы я хотел хэштеги tweeter_user_3, он должен вернуть 1. Как я могу это сделать, предполагая, что мое имя таблицы - твиты.
Я попробовал это:SELECT COUNT( * ) FROM tweets WHERE( LENGTH( REPLACE( tweet_text, '#%', '@') = 0 ) ) AND screen_name = 'tweeter_user_1'
но это не сработало
Я был бы счастлив, если бы результат tweeter_user_1 был 9 тоже: D