Creo que no has entendido lo que dije.
La cosa es que si quieres buscar por tags,
esa búsqueda no puede realizarse por la igualdad en un campo, es decir, que no puedes poner una condición como esta:
porque eso sólo devolverá los registros donde el contenido de ese campo sea exactamente el mismo que el tag ingresado en la variable, y ningún otro valor (además que al crear la sentencia ese tag se transformará en algo que disparará un error de ejecución).
Lo que tienes que hacer es búsquedas basadas en
expresiones regulares, o bien en
relevancia.
Las primeras usan
REGEXP(), la función de MySQL, y se usan para buscar patrones.
Las segundas requieren indices de tipo
FULLTEXT y el uso de el uso de las cláusulas MATCH() ... AGAINST().
Dado que puedes tener una lista de tags para buscar, en tu escenario la mejor solución (y la mas usada) es la segunda opción.
MySQL 5.5 Reference Manual / Functions and Operators / Full-Text Search Functions