En primer lugar, usar LIKE en una consolidación de datos como la que propones, se considera una pésima práctica, porque puede dar lugar a errores de identidad. COmo LIKE funciona por
aproximación, el resultado puede no ser el deseado..
Por otro lado, el hecho de que tengas un "RE:", al inicio de la cadena es medio irrelevante, simplemente podrías eliminarlo de la búsqueda y listo:
Código MySQL:
Ver originalSET `vb2_post`.
`threadid` = `vb2_thread`.
`threadid` WHERE vb2_post.postid
= 1586445
(eliminé el LIKE porque en el contexto de tu consula es semánticamente equivalente al "=", pero implica un algoritmo menos eficiente)
También se podría escribir, y mejor:
Código MySQL:
Ver originalSET `vb2_post`.
`threadid` = `vb2_thread`.
`threadid` `vb2_post`.
`title` = TRIM(REPLACE(vb2_thread.title
, 'RE:', '')) AND vb2_post.postid
= 1586445
Finalmente, cuando quieres usar un LIKE contra el contenido de un campo, no puedes poner el campo en la cadena, porque deja de ser un campo, y pasa a ser la cadena con el nombre del campo.
Para que eso resulte tienes que
encadenar el contenido a los comodines:
Código MySQL:
Ver originalSET `vb2_post`.
`threadid` = `vb2_thread`.
`threadid` `vb2_post`.
`title` LIKE CONCAT('%', vb2_thread.title
, '%') AND vb2_post.postid
= 1586445