j ai quelques exercises sur la table NorthWind(pour ceux qui l on encore)
j aimerais joindre ces deux requete, dans l optique de faire un update...
mais apres une journee de recherche, je ne trouve pas, et aucun post ne
correspond...
voila mes deux requetes...
celle ci donne par produit l annee max de commande:
select max(annee) as maxannee,productID
from prixparproduit_etparcommande
group by productid
order by productID
celle ci donne le CA par produit et par annee:
select sum(T1.net)as CA,T1.annee,T1.productid
from prixparproduit_etparcommande t1
group by T1.annee,T1.productid
order by T1.productID
j aimerais joindre ces tables pour n avoir que le CA
par produit sur l annee max??
(mais la j y arrive pas!)
ensuite, j ai une requete update
update [Order Details]
set unitprice=CASE
WHEN CA < 10000 THEN unitprice* 1.02
WHEN CA BETWEEN 15000 AND 35000 THEN unitprice* 1.03
WHEN CA > 35000 THEN unitprice* 1.04
ELSE CA
END
from [Order Details],(select sum(net)as CA,annee,t1.productid
from prixparproduit_etparcommande t1
where annee in
(select distinct annee
from prixparproduit_etparcommande)
group by annee,T1.productid)
[Order Details]
(cette requete Update fonctionne, elle fait ses calcul sur la vue et met
a jour la table! mais sur chaque annee!!! alors que je ne veux prendre que
le CA
dela derniere annee)
j espere avoir ete clair, mais j avoue ne meme plus savoir ce dont j ai
besoin!
je suis passe par tout ce que je connaissais...
(il me reste plus qu a le faire a la main???? ;-)
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
jeorme
pour ta 1ere req , essaye:
select annee, productID, sum(net) from prixparproduit_etparcommande where annee = (select max(annee) from prixparproduit_etparcommande) group by annee, productID
"bany" a écrit dans le message news: br6tm3$3at$
bonjour à tous,
voila, ds ma phase d apprentissage de SQL,
j ai quelques exercises sur la table NorthWind(pour ceux qui l on encore)
j aimerais joindre ces deux requete, dans l optique de faire un update...
mais apres une journee de recherche, je ne trouve pas, et aucun post ne correspond...
voila mes deux requetes...
celle ci donne par produit l annee max de commande:
select max(annee) as maxannee,productID from prixparproduit_etparcommande group by productid order by productID
celle ci donne le CA par produit et par annee:
select sum(T1.net)as CA,T1.annee,T1.productid from prixparproduit_etparcommande t1 group by T1.annee,T1.productid order by T1.productID
j aimerais joindre ces tables pour n avoir que le CA par produit sur l annee max?? (mais la j y arrive pas!)
ensuite, j ai une requete update
update [Order Details] set unitpriceÊSE WHEN CA < 10000 THEN unitprice* 1.02 WHEN CA BETWEEN 15000 AND 35000 THEN unitprice* 1.03 WHEN CA > 35000 THEN unitprice* 1.04 ELSE CA END from [Order Details],(select sum(net)as CA,annee,t1.productid from prixparproduit_etparcommande t1 where annee in (select distinct annee from prixparproduit_etparcommande) group by annee,T1.productid) [Order Details]
(cette requete Update fonctionne, elle fait ses calcul sur la vue et met a jour la table! mais sur chaque annee!!! alors que je ne veux prendre que le CA dela derniere annee)
j espere avoir ete clair, mais j avoue ne meme plus savoir ce dont j ai besoin! je suis passe par tout ce que je connaissais... (il me reste plus qu a le faire a la main???? ;-)
merci de votre aide...
jean jacques
pour ta 1ere req , essaye:
select annee, productID, sum(net)
from prixparproduit_etparcommande
where annee = (select max(annee) from prixparproduit_etparcommande)
group by annee, productID
"bany" <bany2@ifrance.com> a écrit dans le message news:
br6tm3$3at$1@news.tiscali.fr...
bonjour à tous,
voila, ds ma phase d apprentissage de SQL,
j ai quelques exercises sur la table NorthWind(pour ceux qui l on encore)
j aimerais joindre ces deux requete, dans l optique de faire un update...
mais apres une journee de recherche, je ne trouve pas, et aucun post ne
correspond...
voila mes deux requetes...
celle ci donne par produit l annee max de commande:
select max(annee) as maxannee,productID
from prixparproduit_etparcommande
group by productid
order by productID
celle ci donne le CA par produit et par annee:
select sum(T1.net)as CA,T1.annee,T1.productid
from prixparproduit_etparcommande t1
group by T1.annee,T1.productid
order by T1.productID
j aimerais joindre ces tables pour n avoir que le CA
par produit sur l annee max??
(mais la j y arrive pas!)
ensuite, j ai une requete update
update [Order Details]
set unitpriceÊSE
WHEN CA < 10000 THEN unitprice* 1.02
WHEN CA BETWEEN 15000 AND 35000 THEN unitprice* 1.03
WHEN CA > 35000 THEN unitprice* 1.04
ELSE CA
END
from [Order Details],(select sum(net)as CA,annee,t1.productid
from prixparproduit_etparcommande t1
where annee in
(select distinct annee
from prixparproduit_etparcommande)
group by annee,T1.productid)
[Order Details]
(cette requete Update fonctionne, elle fait ses calcul sur la vue et met
a jour la table! mais sur chaque annee!!! alors que je ne veux prendre que
le CA
dela derniere annee)
j espere avoir ete clair, mais j avoue ne meme plus savoir ce dont j ai
besoin!
je suis passe par tout ce que je connaissais...
(il me reste plus qu a le faire a la main???? ;-)
select annee, productID, sum(net) from prixparproduit_etparcommande where annee = (select max(annee) from prixparproduit_etparcommande) group by annee, productID
"bany" a écrit dans le message news: br6tm3$3at$
bonjour à tous,
voila, ds ma phase d apprentissage de SQL,
j ai quelques exercises sur la table NorthWind(pour ceux qui l on encore)
j aimerais joindre ces deux requete, dans l optique de faire un update...
mais apres une journee de recherche, je ne trouve pas, et aucun post ne correspond...
voila mes deux requetes...
celle ci donne par produit l annee max de commande:
select max(annee) as maxannee,productID from prixparproduit_etparcommande group by productid order by productID
celle ci donne le CA par produit et par annee:
select sum(T1.net)as CA,T1.annee,T1.productid from prixparproduit_etparcommande t1 group by T1.annee,T1.productid order by T1.productID
j aimerais joindre ces tables pour n avoir que le CA par produit sur l annee max?? (mais la j y arrive pas!)
ensuite, j ai une requete update
update [Order Details] set unitpriceÊSE WHEN CA < 10000 THEN unitprice* 1.02 WHEN CA BETWEEN 15000 AND 35000 THEN unitprice* 1.03 WHEN CA > 35000 THEN unitprice* 1.04 ELSE CA END from [Order Details],(select sum(net)as CA,annee,t1.productid from prixparproduit_etparcommande t1 where annee in (select distinct annee from prixparproduit_etparcommande) group by annee,T1.productid) [Order Details]
(cette requete Update fonctionne, elle fait ses calcul sur la vue et met a jour la table! mais sur chaque annee!!! alors que je ne veux prendre que le CA dela derniere annee)
j espere avoir ete clair, mais j avoue ne meme plus savoir ce dont j ai besoin! je suis passe par tout ce que je connaissais... (il me reste plus qu a le faire a la main???? ;-)