Foros del Web » Programando para Internet » ASP Clásico »

ORDER BY con SELECT, no funciona

Estas en el tema de ORDER BY con SELECT, no funciona en el foro de ASP Clásico en Foros del Web. Hola, tengo una instrucción que no logro hacer funcionar, estuve buscando ya en el foro pero no he encontrado aun la solucion. tengo una tabla ...
  #1 (permalink)  
Antiguo 24/08/2010, 06:21
Avatar de edu007ar  
Fecha de Ingreso: septiembre-2003
Ubicación: Buenos Aires
Mensajes: 118
Antigüedad: 20 años, 7 meses
Puntos: 0
ORDER BY con SELECT, no funciona

Hola, tengo una instrucción que no logro hacer funcionar, estuve buscando ya en el foro pero no he encontrado aun la solucion.

tengo una tabla PRODUCTOS relacionada con una tabla CATEGORIAS, la idea es seleccionar los productos y ordenarlos por el campo ORDEN que esta en CATEGORIAS.

PRODUCTOS: id, titulo, precio, idcategoria
CATEGORIAS: id, nombre, orden

Select p.id, p.titulo, p.precio, (select c.nombre from categorias c where c.id=p.idcategoria) from productos p order by (select c.orden from categorias c where c.id=p.idcategoria) asc

Supongo que algo mal debe haber, pero quisiera saber si se puede solucionar.

Gracias.
Eduardo.
__________________
www.proavanz.com.ar
  #2 (permalink)  
Antiguo 24/08/2010, 07:08
 
Fecha de Ingreso: mayo-2009
Mensajes: 201
Antigüedad: 15 años
Puntos: 9
Respuesta: ORDER BY con SELECT, no funciona

seguro que no es la solucion mas elegante ni la mas sencilla, pero desde luego funciona. si acaso ya te respondera otro con alguna solucion mejor, pero por si estas atascado:

select orden, nombre from categorias ORDER BY asc


do while not rs.eof

Select p.id, p.titulo, p.precio from productos



Con eso primero partes la consulta en dos sencillas, no es lo optimo, pero te saca del lio.
Sino a ver que te dicen los demas.
  #3 (permalink)  
Antiguo 24/08/2010, 07:22
Avatar de edu007ar  
Fecha de Ingreso: septiembre-2003
Ubicación: Buenos Aires
Mensajes: 118
Antigüedad: 20 años, 7 meses
Puntos: 0
Respuesta: ORDER BY con SELECT, no funciona

hola monxas, sí seguramente así funcionaría,

pero yo guardo los resultados en una variable con getrows para cerrar la tabla rápido y ya no me queda abierta para hacer otra búsqueda.

como bien decis, no creo que sea lo más optimo, pero funciona.

Gracias igual por la ayuda!

Slds.
__________________
www.proavanz.com.ar
  #4 (permalink)  
Antiguo 24/08/2010, 09:32
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 22 años, 4 meses
Puntos: 98
Respuesta: ORDER BY con SELECT, no funciona

Trata haciendo un JOIN a tus tablas:

Código:
SELECT p.id, p.titulo, p.precio, p.idcategoria, c.id, c.nombre, c.orden FROM productos p INNER JOIN categorias c ON p.idcategoria = c.id ORDER BY c.orden

Si esto no funciona sería bueno ver unos cuantos de tus registros en ambas tablas.


Saludos
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
  #5 (permalink)  
Antiguo 24/08/2010, 09:44
Avatar de edu007ar  
Fecha de Ingreso: septiembre-2003
Ubicación: Buenos Aires
Mensajes: 118
Antigüedad: 20 años, 7 meses
Puntos: 0
Respuesta: ORDER BY con SELECT, no funciona

fenomenoo.... funciona perfecto!

Gracias.
Eduardo.
__________________
www.proavanz.com.ar

Etiquetas: order, select
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 06:58.