Puede por alguna razón tu tabla contenga un campo separados por comas, en mi caso se debía a que iba a usar esa cadena con un motor de busqueda distinto al mysql, un sphinx con lo que me venía muy tener esta información precalculada y almacenada en mi mysql y luego simplemente sacarla y usarla para el sphinx.
En principio esto como solución para SQL no es un buen diseño, es mejor, tener una tabla con n registros y un identificados una relacion 1:n, y simplemente cruzar con un inner join, pero... este no es el caso.
Así que nada me encontre con la necesidad de aprovechar esta información
Posibles soluciones teniendo en cuenta que el campo fk_ids_poblaciones_cercanas es una cadena separada por comas con todas las poblaciones cercadas a una dada
Contiene algo así
419,444,787,1539,1824,1839,1924,2010,5400,5805
Esto no funciona:
tbl_apartamentos_cache.fk_id_tbl_poblaciones in (tbl_poblaciones_cercanas.fk_ids_poblaciones_cercanas)
Esto si funciona:
FIND_IN_SET(tbl_apartamentos_cache.fk_id_tbl_poblaciones, tbl_poblaciones_cercanas.fk_ids_poblaciones_cercanas) > 0
Espero que os haya ayudado
En principio esto como solución para SQL no es un buen diseño, es mejor, tener una tabla con n registros y un identificados una relacion 1:n, y simplemente cruzar con un inner join, pero... este no es el caso.
Así que nada me encontre con la necesidad de aprovechar esta información
Posibles soluciones teniendo en cuenta que el campo fk_ids_poblaciones_cercanas es una cadena separada por comas con todas las poblaciones cercadas a una dada
Contiene algo así
419,444,787,1539,1824,1839,1924,2010,5400,5805
Esto no funciona:
tbl_apartamentos_cache.fk_id_tbl_poblaciones in (tbl_poblaciones_cercanas.fk_ids_poblaciones_cercanas)
Esto si funciona:
FIND_IN_SET(tbl_apartamentos_cache.fk_id_tbl_poblaciones, tbl_poblaciones_cercanas.fk_ids_poblaciones_cercanas) > 0
Espero que os haya ayudado
Comentarios
Publicar un comentario