Contar las ocurrencias de una cadena secundaria en una columna MySQL

Tengo una tabla que almacena información de muchos tweets de Twitter, incluido el texto del tweet y el nombre de pantalla del usuario que twiteó el tweet. Los tweets contienen hashtags (comenzando con #), quiero contar el número de hashtags que un usuario específico ha twitteado:

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 |

Si tuviera que contar los hashtags de tweeter_user_1, el resultado que espero sea 8, si quisiera los hashtags de tweeter_user_3 debería devolver 1. ¿Cómo puedo hacerlo asumiendo que el nombre de mi tabla es tweets?

Intenté esto:SELECT COUNT( * ) FROM tweets WHERE( LENGTH( REPLACE( tweet_text, '#%', '@') = 0 ) ) AND screen_name = 'tweeter_user_1' pero no funcionó

Me alegraría si el resultado de tweeter_user_1 también fuera 9: D