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

mostrar precio mas barato

Estas en el tema de mostrar precio mas barato en el foro de Mysql en Foros del Web. Estimados, Tengo una consulta. Estoy trabajando en php y Mysql y quiero mostrar mis productos desde el mas barato al mas caro y este es ...
  #1 (permalink)  
Antiguo 19/06/2008, 15:22
Avatar de splashman  
Fecha de Ingreso: julio-2002
Ubicación: Super lejos
Mensajes: 364
Antigüedad: 21 años, 9 meses
Puntos: 1
Pregunta mostrar precio mas barato

Estimados,

Tengo una consulta. Estoy trabajando en php y Mysql y quiero mostrar mis productos desde el mas barato al mas caro y este es mi query


Código PHP:
SELECT FROM productos WHERE categoria 'electrodomesticos' ORDER BY 'precio' ASC 
pero me muestra el orden del 1 al final pero del ID y no del precio.

Ayudenme porfis
__________________
Cada dia se aprende algo nuevo
  #2 (permalink)  
Antiguo 19/06/2008, 15:57
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 16 años
Puntos: 300
Respuesta: mostrar precio mas barato

prueba esto:
SELECT * FROM productos WHERE categoria = 'electrodomesticos' ORDER BY precio ASC
Si le pones apóstrofes o comillas simples al nombre del campo, no lo reconoce y te ordena por defecto por la entrada de datos... Si quieres ponerle algo al campo, deberá ser el acento grave
SELECT * FROM productos WHERE categoria = 'electrodomesticos' ORDER BY `precio` ASC
pero esto es solo necesario con nombres reservados, nombres con espacios, etc., algo que tampoco es aconsejable. Prueba la primera opción.

Última edición por jurena; 21/06/2008 a las 09:13
  #3 (permalink)  
Antiguo 19/06/2008, 21:23
Avatar de splashman  
Fecha de Ingreso: julio-2002
Ubicación: Super lejos
Mensajes: 364
Antigüedad: 21 años, 9 meses
Puntos: 1
Respuesta: mostrar precio mas barato

Estimado, probe pero no hizo nada. Muestra tal cual los registros. Al parecer hace una variante pero por modificación y no por precio. Es decir que si el registro 4 fue el último que se modificó.

Que podrá ser?
__________________
Cada dia se aprende algo nuevo
  #4 (permalink)  
Antiguo 19/06/2008, 23:10
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 16 años
Puntos: 300
Respuesta: mostrar precio mas barato

Dinos cuál es la naturaleza del campo precio. O mejor, ponnos la estructura de la tabla con los campos y la naturaleza de los mismos. Ponnos algún ejemplo con datos concretos y el resultado que te sale. Esto que quieres hacer es algo muy fácil y no sé por qué no te funciona esa consulta. Si precio está en la misma tabla, tal vez no lo has puesto como numérico sino como varchar, y al ordenar te lo ordena como varchar. Se me ocurre...

Última edición por jurena; 19/06/2008 a las 23:42
  #5 (permalink)  
Antiguo 20/06/2008, 10:15
Avatar de splashman  
Fecha de Ingreso: julio-2002
Ubicación: Super lejos
Mensajes: 364
Antigüedad: 21 años, 9 meses
Puntos: 1
Respuesta: mostrar precio mas barato

listop.

Lo que pasa es que lo tenia como text, así que lo dejé como int y funcionó.

Ahora la pregunta es que si también me va a funcionar con números como 22.457 o tiene que ser sin puntos?
__________________
Cada dia se aprende algo nuevo
  #6 (permalink)  
Antiguo 20/06/2008, 10:58
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 16 años
Puntos: 300
Respuesta: mostrar precio mas barato

si vas a introducir decimales, debes usar float, double o decimal, en lugar de int, y deberás decirle el número de decimales que quieres usar. El uso de un tipo u otro dependerá de la precisión que quieras alcanzar...
mira este enlace al manual
http://dev.mysql.com/doc/refman/5.0/...-overview.html
  #7 (permalink)  
Antiguo 15/07/2008, 10:30
Avatar de splashman  
Fecha de Ingreso: julio-2002
Ubicación: Super lejos
Mensajes: 364
Antigüedad: 21 años, 9 meses
Puntos: 1
Respuesta: mostrar precio mas barato

Ok, le hecharé una mirada
__________________
Cada dia se aprende algo nuevo
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 09:30.