Précédent   Forum des professionnels en informatique > Bases de données > Sybase > Adaptive Server Enterprise
Adaptive Server Enterprise Forum d'entraide concernant Sybase Adaptive Server Enterprise, le dataserver phare de Sybase
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 29/08/2007, 10h22   #1
Invité régulier
 
Inscription : octobre 2006
Messages : 45
Détails du profil
Informations forums :
Inscription : octobre 2006
Messages : 45
Points : 8
Points : 8
Par défaut [ASE 11.9] Problème d'agregats

Bonjour,

Je souhaite récupérer une date de livraison souhaitée par le client, pour toutes les commandes passées par ce client, ne garder que celle ayant la date de commande la plus récente.
Code :
1
2
3
4
5
6
7
 
SELECT Commandes.RequestedDate
FROM Client, CliCom, Commandes
WHERE Client.ID = CliCom.ID
AND CliCom.ComID = Commandes.ID
GROUP BY CliCom.ComID
HAVING Commandes.OrderDate = max(Commandes.OrderDate)
Malheureusement je n'ai pas le résultat attendu. Je ne sais pas si je dois passer par un group by et un having.

Merci de m'aider.
NicaeaCivitas est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/08/2007, 13h56   #2
Rédacteur/Modérateur
 
Inscription : janvier 2006
Messages : 1 301
Détails du profil
Informations personnelles :
Âge : 52

Informations forums :
Inscription : janvier 2006
Messages : 1 301
Points : 1 505
Points : 1 505
Envoyer un message via AIM à mpeppler
Sans connaitre la structure des tables (les PK, FK, etc) c'est un peu difficile.

Sur le principe le HAVING doit marcher:
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
 
[35] DBA_SQL.histo.1> SELECT dbName, tableName, data_kb FROM table_size WHERE serverName='ADVUTIL' GROUP BY serverName HAVING insertDate = max(insertDate);
 dbName                           tableName                        data_kb
 -------------------------------- -------------------------------- --------------------
 advutil                          PrintMode                                    2.000000
 advutil                          advprinter                                  28.000000
 advutil                          mon_go                                       2.000000
 advutil                          mon_interfaces_events                   131224.000000
 advutil                          mon_roles                                    2.000000
 advutil                          mon_run_steps                               24.000000
 advutil                          mon_runs                                     2.000000
 advutil                          mon_streams                                 44.000000
 advutil                          mon_users                                    2.000000
 
(9 rows affected)
Essaie de remplacer le GROUP BY CliCom.ComID par GROUP BY Commandes.ID

Michael
__________________
Michael Peppler
Membre de TeamSybase - www.teamsybase.com

"A successful [software] tool is one that was used to do something undreamed of by its author." -- S. C. Johnson
mpeppler est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 22h54.


 
 
 
 
Partenaires

Hébergement Web