Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Ayuda con una consulta

Estas en el tema de Ayuda con una consulta en el foro de Mysql en Foros del Web. Hola!!!!! Les cuenta a ver si me pueden ayudar.... Tengo una consulta que me muestra una lista, que tiene estos campos: id, nombre, categoria La ...
  #1 (permalink)  
Antiguo 05/02/2010, 11:39
 
Fecha de Ingreso: mayo-2007
Ubicación: Ramos Mejia - Buenos Aires
Mensajes: 153
Antigüedad: 16 años, 11 meses
Puntos: 0
Ayuda con una consulta

Hola!!!!!

Les cuenta a ver si me pueden ayudar....

Tengo una consulta que me muestra una lista, que tiene estos campos:
id, nombre, categoria

La categoria es un numero que despues llendo a otra tabla me da el nombre que corresponde.


Esta es la consulta de la lista de productos:

"SELECT * FROM jos_sc_products"

y para sacar el nombre de la categoria tengo esta consulta:

"SELECT * FROM jos_sc_categorias WHERE id='$categoria'"


Pero el problema que tengo es que la consulta de la lista yo la quiero ordenar por categoria, por orden alfabetico del nombre, no por el numero que tiene esa tabla.
Como seria la consulta que tengo que hacer para poder ordenarlo asi??


Muchas gracias si me pueden ayudar!!!

Y lo que quiero hacer es que el resultado este orde
__________________
Agustín Pucci
Web Hosting Argentina
  #2 (permalink)  
Antiguo 05/02/2010, 11:41
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: Ayuda con una consulta

Uniendo ambas tablas con un JOIN
Código MySQL:
Ver original
  1. SELECT * FROM js_sc_products p JOIN jos_sc_categorias c ON p.categoria = c.id ORDER BY c.nombre;
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #3 (permalink)  
Antiguo 05/02/2010, 11:43
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 16 años
Puntos: 300
Respuesta: Ayuda con una consulta

Tienes que hacer un join entre las tablas. No sé cómo llamas a ese campo numérico que es el id de categoría en la tabla que yo llamo tablacategorias. Tampoco has dicho cómo se llama el campo de la tabla tablacategorias donde escribes su nombre.
A ver si esto te sirve de orientacion
"SELECT *, categoria FROM jos_sc_categorias INNER JOIN tablacategorias ON tablacategorias.id = jos_sc_categorias.idcategoria WHERE id='$categoria' ORDER BY tablacategorias.categoria"

Se adelantó David. Saludos.
  #4 (permalink)  
Antiguo 05/02/2010, 12:16
 
Fecha de Ingreso: mayo-2007
Ubicación: Ramos Mejia - Buenos Aires
Mensajes: 153
Antigüedad: 16 años, 11 meses
Puntos: 0
Respuesta: Ayuda con una consulta

Muchas gracias por la pronta respuesta!!

David prove con tu consulta pero me sale este error:
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in

Los nombres que usaste de los campos son todos correctos.


Jurena tu consulta me mario un poco!! jajajaj
Una pregunta? es necesario incluir este WHERE id='$categoria'????? Porque yo quiero mostrar todos los registros.


Yo tengo la tabla js_sc_products

ID - NOMBRE - CATEGORIA
5 --- sillas ----- 1001
6 --- mesas ----- 1002

Y la tabla jos_sc_categorias

ID -- NOMBRE
1001 madera
1002 plastico


Seria algo asi las tablas...Nuevamente muchas gracias por la ayuda!!!!
__________________
Agustín Pucci
Web Hosting Argentina
  #5 (permalink)  
Antiguo 05/02/2010, 12:22
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: Ayuda con una consulta

Imprime el valor de mysql_error() para obtener una descripción más detallada del problema.

Asegúrate de escribir correctamente los nombres de tablas y campos.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #6 (permalink)  
Antiguo 05/02/2010, 12:35
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 16 años
Puntos: 300
Respuesta: Ayuda con una consulta

Creo que lo que te vale es lo de David:
SELECT c.nombre categoria, p.producto FROM js_sc_products p JOIN jos_sc_categorias c ON p.categoria = c.id ORDER BY c.nombre;

Si tienes problemas con PHP, debes preguntarlo en el foro PHP.
  #7 (permalink)  
Antiguo 05/02/2010, 12:48
 
Fecha de Ingreso: mayo-2007
Ubicación: Ramos Mejia - Buenos Aires
Mensajes: 153
Antigüedad: 16 años, 11 meses
Puntos: 0
Respuesta: Ayuda con una consulta

Ahi con el mysql_error() me salto el error y lo pude arreglar, me tengo que acostumbrar de usar.

Funciona perfecto la consulta!!



Muchas gracias David y Jurena!!
Saludosss
__________________
Agustín Pucci
Web Hosting Argentina

Etiquetas: Ninguno
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 15:59.