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

Tomar precio de otra tabla

Estas en el tema de Tomar precio de otra tabla en el foro de Mysql en Foros del Web. Hola amigos, tengo 2 tablas uno se llama articulos. Este: Este otro se llama precios. Lo que quiero hacer es tomar unos de los precio ...
  #1 (permalink)  
Antiguo 19/12/2012, 21:12
Avatar de arielenter  
Fecha de Ingreso: abril-2009
Mensajes: 75
Antigüedad: 15 años
Puntos: 2
Pregunta Tomar precio de otra tabla

Hola amigos, tengo 2 tablas uno se llama articulos.

Este:




Este otro se llama precios.



Lo que quiero hacer es tomar unos de los precio unidad y pack de cada articulo, habra articulo que solo tiene un tipo puede ser pack o unidad.

por ejemplo para que quede asi:

Código SQL:
Ver original
  1. '--------------------------------------------------------------
  2. 'id  |   articulo        |   stock    | p.unidad  |   p.pack  |
  3. '--------------------------------------------------------------
  4. '1   | ouro fino lata    |    100     |   1000        10000
  5. '2   | budweiser lata    |    150     |   2000        10000
  6. '3   | brahama botellita |    200     |      0        25000
__________________
www.enterpy.net
  #2 (permalink)  
Antiguo 20/12/2012, 00:07
Avatar de JhonErick  
Fecha de Ingreso: noviembre-2012
Ubicación: colombia
Mensajes: 38
Antigüedad: 11 años, 5 meses
Puntos: 3
Respuesta: Tomar precio de otra tabla

Un select con inner Join seria lo mas apropiado, aqui encontraras toda la info que necesitas
http://dev.mysql.com/doc/refman/5.0/en/join.html

Saludos
  #3 (permalink)  
Antiguo 20/12/2012, 08:35
Avatar de arielenter  
Fecha de Ingreso: abril-2009
Mensajes: 75
Antigüedad: 15 años
Puntos: 2
Respuesta: Tomar precio de otra tabla

Gracias por responder, Lo hice asi:

Código MySQL:
Ver original
  1. SELECT a.id,a.articulo,a.stock,c.precio AS 'Precio-Unidad',c.precio AS 'Precio-Pack'
  2. FROM articulos a
  3. JOIN precios c ON a.id = c.idarticulo
  4. GROUP BY a.id,c.idarticulo

Pero como hago para que me traiga el segundo tipo de precio eso si tiene los 2 tipos de precio si tiene uno que solo traiga unos de los precios.

Con ese SQL me trae esto:



Yo quiero que traiga así:
__________________
www.enterpy.net
  #4 (permalink)  
Antiguo 20/12/2012, 08:43
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: Tomar precio de otra tabla

Prueba con:
Código MySQL:
Ver original
  1.     a.id,
  2.     a.articulo,
  3.     a.stock,
  4.     c1.precio 'Precio-Unidad',
  5.     c2.precio 'Precio-Pack'
  6. FROM articulos a
  7.     INNER JOIN precios c1 ON a.id = c1.idarticulo
  8.     INNER JOIN precios c2 ON  a.id = c2.idarticulo
  9. WHERE  c1.precio < c2.precio
  10. GROUP BY a.id,c.idarticulo
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #5 (permalink)  
Antiguo 20/12/2012, 09:10
Avatar de arielenter  
Fecha de Ingreso: abril-2009
Mensajes: 75
Antigüedad: 15 años
Puntos: 2
Respuesta: Tomar precio de otra tabla

Este es el resultado que me da.

__________________
www.enterpy.net
  #6 (permalink)  
Antiguo 20/12/2012, 09:27
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: Tomar precio de otra tabla

Probemos de nuevo:
Código MySQL:
Ver original
  1.     a.id,
  2.     a.articulo,
  3.     a.stock,
  4.     IFNULL(c1.precio, 0.0) 'Precio-Unidad',
  5.     IFNULL(c2.precio, 0.0) 'Precio-Pack'
  6. FROM articulos a
  7.     LEFT JOIN precios c1 ON a.id = c1.idarticulo
  8.     LEFT  JOIN precios c2 ON  a.id = c2.idarticulo
  9. WHERE  (c1.idarticulo = c2.idarticulo
  10.         AND c1.precio < c2.precio)
  11.         OR
  12.         (c1.idarticulo IS NULL XOR c2.idarticulo IS NULL)
  13. GROUP BY a.id,c.idarticulo;
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #7 (permalink)  
Antiguo 20/12/2012, 11:15
Avatar de arielenter  
Fecha de Ingreso: abril-2009
Mensajes: 75
Antigüedad: 15 años
Puntos: 2
Respuesta: Tomar precio de otra tabla

Ahí si funciona amigo. Vos decís que esta bien tener así la tabla artículos con su lista de precios en otra tabla.

Estoy queriendo hacer así por que tengo un cliente que necesita que tenga muchos precios su artículos. Yo con este método lo que quiero hacer es en la programación.

Esta es la ventana de mi programa ventas.



Como ves ahi tiene un campo TIPO en donde voy a saber si este articulo se puede vender por pack o solo por unidad. Entonces lo que yo quiero hacer es darle una opcion al operador que si el articulo tiene precio por unidad y por pack que le aparezca una ventanina como este:

__________________
www.enterpy.net

Etiquetas: listas, precios
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 00:22.