Cita: Estoy utilizando el CONCAT para agregar el separador _ , ya que guardo en la variable antes _1__2_ y así sucesivamente...y si le doy que busque 1, puede "dar positivo" en un _11__12_ thx!
Lo que pasa es que estás complicando las cosas innecesariamente.
Si el campo contiene "1", "11" o "12", y lo que quieres hacer es buscar aquellos casos en los que ese campo está dentro de un conjunto de valores, estás usando la función y el método equivocado.
Eso se hace más o menos así:
Donde cada valor posible se pone en el paréntesis, separado por coma de los demás. Esta sentencia, a nivel de PHP se construye dinámicamente con los valores seleccionados.
En el caso de querer tomar una sola variable que contenga los valores, para buscar uno entre varios, lo mejor es usar una variable que los contenga así: "1, 2, 3, 11, 13, 14", y usar la función FIND_IN_SET():
FIND_IN_SET() devuelve el número de la posición del valor donde se encontró el buscado, o cero, si no está.
Ejemplo:
Código MySQL:
Ver original+----------+
| posicion |
+----------+
| 7 |
+----------+