Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

requête sql

2 réponses
Avatar
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 !

2 réponses

Avatar
Marc Rauzier
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)
Avatar
val
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.