requête sql

Le
val
Bonjour,

Je débute en SQL et j'essaie de former une requête trop compliquée pour
moi.

Voila, j'analyse une base produits et j'essaie de classer les
différents produits en fonction du chiffre d'affaire qu'ils ont générés
ces 5 dernières années.

J'ai une seule table avec des enregistrements où l'on trouve les champs
prix, références, date (au format ISO-8601).
une même référence peut évidemment avoir été vendue plusieurs fois.

J'ai essayé (avec sqlite) :

SELECT SUM(prix) FROM table WHERE reference = (SELECT DISTINCT
reference FROM table) AND date > "2006-01-01"

Mais c'est n'importe quoi ! C'est au niveau de la sous requête SELECT
que je m'embrouille. La requête me renvoie une seule valeur alors que
je m'attends à une colonne de résultats.

Help !
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Marc Rauzier
Le #23170081
val écrivait dans
news:4d6e2361$0$5396$ ce qui suit:

Bonjour,



Bonjour


Je débute en SQL et j'essaie de former une requête trop compliquée
pour moi.

Voila, j'analyse une base produits et j'essaie de classer les
différents produits en fonction du chiffre d'affaire qu'ils ont
générés ces 5 dernières années.

J'ai une seule table avec des enregistrements où l'on trouve les
champs prix, références, date (au format ISO-8601).
une même référence peut évidemment avoir été vendue plusieurs
fois.

J'ai essayé (avec sqlite) :

SELECT SUM(prix) FROM table WHERE reference = (SELECT DISTINCT
reference FROM table) AND date > "2006-01-01"



Est-ce que ceci fonctionne ?

select reference, sum(prix) as somme
from table
where date > "2006-01-01"
group by reference
order by somme desc


Mais c'est n'importe quoi ! C'est au niveau de la sous requête
SELECT que je m'embrouille. La requête me renvoie une seule valeur
alors que je m'attends à une colonne de résultats.

Help !






--
Cordialement
Marc Rauzier
(pour me répondre, ne pas utiliser le from mais le reply-to)
val
Le #23170201
Marc Rauzier a écrit le 02/03/2011 :

Est-ce que ceci fonctionne ?

select reference, sum(prix) as somme
from table
where date > "2006-01-01"
group by reference
order by somme desc




Impec !

Merci.
Publicité
Poster une réponse
Anonyme