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

[SOLUCIONADO] Problema consulta de dos tablas a la vez

Estas en el tema de Problema consulta de dos tablas a la vez en el foro de PostgreSQL en Foros del Web. Hola a todos de nuevo. Sigo sin espabilar en el tema este del SQL. Estoy en un aprieto con una consulta que quiero realizar entre ...
  #1 (permalink)  
Antiguo 23/11/2014, 11:35
Avatar de Pantera80  
Fecha de Ingreso: noviembre-2014
Ubicación: España
Mensajes: 35
Antigüedad: 9 años, 5 meses
Puntos: 6
Pregunta Problema consulta de dos tablas a la vez

Hola a todos de nuevo.

Sigo sin espabilar en el tema este del SQL.

Estoy en un aprieto con una consulta que quiero realizar entre dos tablas de mi base de datos en PostgreSQL.

El tema es que por parámetros recibo los datos de id_ruta, fecha_servicio. Entonces con esto tengo que averiguar el id_pedido, teniendo en cuenta que la cantidad de la tabla lineas_pedido debe ser la más alta de todas.

Esta es mi primera tabla, lineas_pedido:

Código SQL:
Ver original
  1. CREATE TABLE lineas_pedido
  2. (
  3.   cantidad INTEGER NOT NULL,
  4.   importe money NOT NULL,
  5.   id_producto INTEGER NOT NULL,
  6.   id_pedido BIGINT NOT NULL,
  7.   id_cliente serial NOT NULL,
  8.   CONSTRAINT lineas_pedido_pkey PRIMARY KEY (id_producto, id_pedido),
  9.   CONSTRAINT lineas_pedido_id_cliente_fkey FOREIGN KEY (id_cliente)
  10.       REFERENCES cliente (id_cliente) MATCH SIMPLE
  11.       ON UPDATE NO ACTION ON DELETE NO ACTION,
  12.   CONSTRAINT lineas_pedido_id_pedido_fkey FOREIGN KEY (id_pedido)
  13.       REFERENCES pedido (id_pedido) MATCH SIMPLE
  14.       ON UPDATE NO ACTION ON DELETE NO ACTION
  15. )

Y esta la segunda, pedido:

Código SQL:
Ver original
  1. CREATE TABLE pedido
  2. (
  3.   id_empleado INTEGER NOT NULL,
  4.   id_ruta INTEGER NOT NULL,
  5.   fecha_servicio DATE NOT NULL,
  6.   total_importe money NOT NULL,
  7.   id_pedido BIGINT NOT NULL,
  8.   id_cliente serial NOT NULL,
  9.   CONSTRAINT pedido_pkey PRIMARY KEY (id_pedido),
  10.   CONSTRAINT ped_pre_fk FOREIGN KEY (id_empleado)
  11.       REFERENCES empleado (id_empleado) MATCH SIMPLE
  12.       ON UPDATE NO ACTION ON DELETE NO ACTION,
  13.   CONSTRAINT ped_rut_fk FOREIGN KEY (id_ruta)
  14.       REFERENCES ruta (id_ruta) MATCH SIMPLE
  15.       ON UPDATE NO ACTION ON DELETE NO ACTION,
  16.   CONSTRAINT pedido_id_cliente_fkey FOREIGN KEY (id_cliente)
  17.       REFERENCES cliente (id_cliente) MATCH SIMPLE
  18.       ON UPDATE NO ACTION ON DELETE NO ACTION
  19. )

Gracias de antemano

Última edición por gnzsoloyo; 24/11/2014 a las 14:22
  #2 (permalink)  
Antiguo 24/11/2014, 14:06
Avatar de drako_darpan  
Fecha de Ingreso: octubre-2008
Ubicación: Sinaloa
Mensajes: 617
Antigüedad: 15 años, 6 meses
Puntos: 58
Respuesta: Problema consulta de dos tablas a la vez

No entiendo muy bien para que ocupas la tabla " lineas_pedido ", puesto que en tu tabla " pedido ", tiene el campo id_pedido.

Si ocupas de tu tabla de lineas_pedido la información, puedes usar un JOIN:

Código SQL:
Ver original
  1. SELECT a.id_pedido
  2. FROM lineas_pedido AS a
  3. JOIN pedido AS b ON ( a.id_pedido = b.id_pedido )
  4. WHERE b.id_ruta = 'X' AND b.fecha_servicio = '2014-11-24'
  5. ORDER BY a.id_pedido

Revisa para ver si te funciona.

__________________
Your Code as a Crime Scene...
  #3 (permalink)  
Antiguo 27/11/2014, 12:03
Avatar de Pantera80  
Fecha de Ingreso: noviembre-2014
Ubicación: España
Mensajes: 35
Antigüedad: 9 años, 5 meses
Puntos: 6
Respuesta: Problema consulta de dos tablas a la vez

Hola drako.

La idea es que tengo una tabla donde registro los pedidos (pedido) y otra donde almaceno los productos de cada pedido (lineas_pedido).

Gracias por la ayuda, me ha servido

Etiquetas: postgres, sql, tablas, vez
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 03:12.