pb sous-interrogation scalaire
bonjour,
je souhaite faire une requête qui, dans la clause select, utilise comme colonne des sous-interrogation scalaire. Je retrouve les bonnes informations, seulement celles-ci sont dupliquées.
Il s'agit, à partir de ces 2 tables, afficher les ventes effectuées pour chaque client et pour chacun des 4 trimestres de l'année.
mes tables:
sales_order(ORDER_ID ,ORDER_DATE,CUSTOMER_ID,TOTAL)
customer(CUSTOMER_ID,CREDIT_LIMIT)
ma requête:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
|
select distinct c.name as "name",
so1.total as "1st",
so2.total as "2nd",
so3.total as "3rd",
so4.total as "4th"
from customer c, sales_order s,sales_order so1,sales_order so2,sales_order so3,sales_order so4
where c.customer_id=s.customer_id
and so1.total in (select so1.total from sales_order so1 where so1.customer_id=c.customer_id and to_char(so1.order_date, 'Q')=1)
and so2.total in (select so2.total from sales_order so2 where so2.customer_id=c.customer_id and to_char(so2.order_date, 'Q')=2)
and so3.total in (select so3.total from sales_order so3 where so3.customer_id=c.customer_id and to_char(so3.order_date, 'Q')=3)
and so4.total in (select so4.total from sales_order so4 where so4.customer_id=c.customer_id and to_char(so4.order_date, 'Q')=4)
order by c.name; |
merci pour votre aide