elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: (TUTORIAL) Aprende a emular Sentinel Dongle By Yapis


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  Bases de Datos (Moderador: Carloswaldo)
| | | |-+  subconsultas
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: subconsultas  (Leído 4,359 veces)
m@o_614


Desconectado Desconectado

Mensajes: 389


Ver Perfil
subconsultas
« en: 4 Abril 2014, 06:54 am »

Saludos, tengo dos tablas en postgres que son la siguientes:

partidas_pedidos con sus campos: id_pedido(Pk),fecha_pedido,cantidad,producto(fK),cliente(Fk)

y info_clientes: nombre,apellido,id_cliente(Pk)

y me piden que haga una consulta:

Mostrar IDs de los clientes, sin repetirse, que en algun pedido hayan comprado mas de dos ejemplares de un mismo producto(cantidad) durante 1999

SELECT DISTINCT id_cliente
FROM info_clientes
WHERE id_cliente=(SELECT cliente FROM partidas_pedidos WHERE cantidad > 2 AND fecha_pedido LIKE '1999%');

pero me aparece un error que dice: subconsulta utilizada como expresion retorno mas de un registro y no entiendo por qué me sale esto


En línea

1mpuls0


Desconectado Desconectado

Mensajes: 1.186


Ver Perfil
Re: subconsultas
« Respuesta #1 en: 4 Abril 2014, 22:29 pm »

No estoy muy seguro, pero creo que sería así.

Código
  1. SELECT A.cliente, A.total FROM (
  2. SELECT cliente, SUM(cantidad) AS total FROM  partidas_pedidos WHERE fecha_pedido LIKE '1999%' GROUP BY cliente, producto) AS A WHERE A.total>2
  3.  

Es que tengo duda con lo que mencionas de "sin repetirse" y si el cliente compró más de dos productos diferentes en ese periodo?
Por ejemplo si el cliente 1 compró 3 cantidades del producto 1 y ademas compro 5 cantidades del producto 7
En este caso si debería repetirse el id del cliente no? es lo más lógico.

De ser así la consulta que acabo de hacer no sirve para nada de eso xD

En ese caso te serviría esto.

Código
  1. SELECT C.cliente, C.producto FROM (
  2. SELECT cliente, SUM(cantidad), producto FROM  partidas_pedidos WHERE fecha_pedido LIKE '1999%' GROUP BY cliente, producto HAVING SUM(cantidad)>2) AS C
  3.  


« Última modificación: 4 Abril 2014, 22:51 pm por Darhius » En línea

abc
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
insert y subconsultas en mysql
Bases de Datos
doreymis 4 10,825 Último mensaje 8 Junio 2010, 21:26 pm
por ^Tifa^
[Solucionado]Dudas Sql subconsultas relacionando varias tablas « 1 2 »
Bases de Datos
Anonymous250 11 16,968 Último mensaje 10 Enero 2012, 12:36 pm
por Anonymous250
Problema con subconsultas en mysql [solucionado]
Bases de Datos
bewa 3 6,156 Último mensaje 1 Abril 2012, 01:52 am
por bewa
simple duda Consulta mysqlworkbench Insert into con 2 subconsultas
Bases de Datos
Anonymous250 1 2,399 Último mensaje 13 Junio 2012, 23:41 pm
por Shell Root
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines