Buenas tengo estas tablas:
[/HIGHLIGHT]
Tabla articulos:
http://img59.imageshack.us/img59/8434/articulosg.png
Tabla familias:
http://img840.imageshack.us/img840/6108/familias.png
Tabla familias_has_marcas:
http://img607.imageshack.us/img607/5...shasmarcas.png
Y este sp:
Código SQL:
Ver originalDELIMITER $$
CREATE DEFINER=`root`@`localhost` PROCEDURE `S_Articulos`(IN in_idMarca INT,
IN in_regInicio INT, IN in_regxPagina INT)
BEGIN
SELECT idArticulos, Articulos.Nombre,Descripcion,Precio,Foto FROM articulos
INNER JOIN marcas ON articulos.marcas_idMarcas= marcas.idMarcas
INNER JOIN familias_has_marcas ON marcas.idMarcas=familias_has_marcas.MArcas_idMarcas
WHERE
marcas.idMarcas=in_idMarca
ORDER BY familias_has_marcas.Orden, articulos.Orden
LIMIT in_regInicio, in_regxPagina;
END
EL tema es que al llamar al sp Call S_articulos(3,0,9)
deberia obtener un listado ordenado primero por el campo orden de la tabla familias_has_marcas y despues por el campo orden de articulos quedando algo como :
Camisa1
Camisa2
Camisa3
Pantaloneta1
Pantaloneta2
Pantaloneta3
Zapatillas1
Zapatillas2
Zapatillas3
Puesto que el orden1 dentro e familias_has_marcas es del idfamilia1 saldria primero las Camisas que es la familia con id1, y segun el campo orden de la tabla articulos, en este caso la Camisa1 tiene orden1 la Camisa2 el orden2 y la camisa 3 el 3.
Pero obtengo la siguiente ordenacion:
CAmisa1
Pantalon1
Zapatilla1
CAmisa2
pantalon2
zapatillas2
Camisa3
Pantalon3
zapatillas3
Solucion?