de BDProfiler » 08/05/2005 10:48
Voici un petit query que j'utilise et qui devrait répondre à ta demande.
Qui prend comme valeur pour un album dans l'ordre la cote, sinon, le prix d'achat, sinon 10€ (tu peux le changer dans le query).
Il donne la valeur totale de la collection et la valeur de chaque série.
Les colonnes :
- 1= Nom de la série et grand total
- 2= Nombre d'albums
- 3= Nombre d'albums cotés
- 4= Nombre d'albums sans coté, ni prix d'achat
- 5= Valeur des seuls albums cotés de la série
- 6= Valeur globale de la série, selon règle sus-définie
@+
SELECT S.Titre
, COUNT(*) AS [Nb Albums]
, SUM(IIF(Al.CoteActuelle IS NULL,0,1)) AS [Nb Cotes]
, SUM(IIF(Al.CoteActuelle IS NULL AND Al.PrixAchat IS NULL,1,0)) AS [Nb NoVal]
, SUM(Al.CoteActuelle) AS [Cote]
, SUM(IIF(Al.CoteActuelle IS NULL,IIF(Al.PrixAchat IS NULL,10,Al.PrixAchat),Al.CoteActuelle)) AS [Valeur]
FROM Albums Al, Series S
WHERE Al.IdSerie=S.IdSerie
GROUP BY S.Titre
UNION
SELECT 'Total='
, COUNT(*)
, SUM(IIF(Al.CoteActuelle IS NULL,0,1))
, SUM(IIF(Al.CoteActuelle IS NULL AND Al.PrixAchat IS NULL,1,0))
, SUM(Al.CoteActuelle)
, SUM(IIF(Al.CoteActuelle IS NULL,IIF(Al.PrixAchat IS NULL,10,Al.PrixAchat),Al.CoteActuelle))
FROM Albums Al, Series S
WHERE Al.IdSerie=S.IdSerie
GROUP BY 'Total='
ORDER BY 5 DESC, 4 DESC, S.Titre