Estimados compañeros,
Quisiera plantearles el porqué de la cuestión, ya que con suerte la solución o el arreglo la he conseguido obtener.
Es sencillisimo. Piénsese de una tabla llamada "test" con un listado de nombres, con columna primaria "id", y "nombre".
Si queremos hacer una consulta dentro de la misma tabla para encontrar semejanzas de nombres y mostrar cuales han habido, nos encontramos con:
SELECT a.id, (
SELECT GROUP_CONCAT( CAST( b.id AS CHAR ) )
FROM test b
WHERE b.nombre LIKE CONCAT( '%', a.nombre, '%' )
AND a.id != b.id
) AS algo
FROM test a
HAVING algo IS NOT NULL
Mi pregunta es, ¿porqué he tenido que concatenar los % para poder hacer esa consulta LIKE? He tenido la suerte de salir con esa idea para probar y funciona. Decir que sí, que poniendo solo "LIKE a.nombre" hace una comparación, pero solo como si de " LIKE 'a.nombre%' " se tratara!
Es una curiosidad que quisiera entender, muchas gracias de antemano :)