Bonjour,
Dans une des applications de mon entreprise, nous utilisons cette syntaxe SQL depuis SQL 2000
Nous avons migré notre client sur SQL 2012 (alors que mon entreprise est en 2008R2 voir 2010 pour certains).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 select distinct bu.matricule, nom=isnull(rtrim(ag.nom), ''), prenom=isnull(rtrim(ag.prenom), '') from Bulletin bu join Agents ag on ag.matricule = bu.matricule where (bu.regime = 'TT') and (bu.mandat = '' or bu.mandat is null) and bu.centre_integre = 'O' and bu.centre in (select centre from Var_Centre where mois_paie = 0 and a_mandater = 'O') order by ag.nom, ag.prenom
Ce client a rencontré une erreur, alors que de mon côté je ne rencontre aucune erreur particulière.
En effet, chez le client la requête fonctionne uniquement si j'écris la clause ORDER BY de cette façon
cela correspond au nom des Alias.
Code : Sélectionner tout - Visualiser dans une fenêtre à part order by nom, prenom
si je mets les préfixes " ag. " devant mes colonnes, SQL (2012) m'envoie un message d'erreur : "Les éléments ORDER BY doivent se retrouver dans la liste de sélection si SELECT DISTINCT est spécifié. "
correspondant au code erreur 145 de cette liste
Merci de m'apporter une aide précieuse, car j'ai bien peur que cela touche toutes nos applications et procédures stockées.
Partager