Ver Mensaje Individual
  #1 (permalink)  
Antiguo 11/06/2011, 17:39
Scorpiatus
 
Fecha de Ingreso: noviembre-2002
Ubicación: Ramos Mejía - Buenos Aire
Mensajes: 36
Antigüedad: 22 años
Puntos: 1
Pregunta Mysql: Select ordenado por final de cadena

Hola, en una tabla tengo una columna que contiene varias cadenas organizadas con separadores.

Por ejemplo:

ID | Producto | Categorias
----+------------------+---------------------------------------
1 | producto 1 | cate_1#3 cate_4#2
2 | producto 2 | cate_2#1 cate_5#6 cate_1#3
3 | producto 3 | cate_1#2


Obviamente son productos que comparten una misma tabla y que pueden pertenecer a un número infinito de categorías.

Si realizo un select para la categoría Nº 1 con esta sintaxis:

SELECT * FROM prueba WHERE categorias LIKE '%cate_1#%'

Me devuelve los productos que contienen cate_1#, hasta ahí ok.

Lo que necesito es poder ordenar los resultados por el nro. que aparece luego del signo numeral (#) en la cadena de categoría.

En el ejemplo, debería devolverme:

ID: 2,3,1


Puedo utilizar un array para guardar los resultados y luego ordenarlos, pero quería saber si se les ocurre otra idea para ahorrar tiempo.

Muchas gracias.
__________________
Porque lo importante no es lo que hacemos sino como lo hacemos...