Bonjour
Je suis un peu stupéfait de la maniere de devoir traiter les group by en SQL Server !
J'essaye un query qui fonctionne bien en MySql
Le count(*) associé au group by me permettent d'avoir le nombre de contact lié a chaque Personnes
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 SELECT count(*), PersID AS PersID, PersNom AS Nom, PersPrenom AS Prenom, PersSexID AS Sex, PaysNomFR AS Nationalite, PersGSM AS Mobile, PersTel AS Tel, PersEmail AS Email FROM Personnes_tbl INNER JOIN Link_Contacts_tbl ON PersID = CtacPersID LEFT OUTER JOIN Pays_tbl ON PersNationID = PaysID group by (PersID)
En MySql ce genre de query fonctionne tres bien et la syntaxe me semble logique
En SQL Server ca ne fonctionne pas du tout et quelquiun vient de me dire que je dois inclure TOUS les éléments dans le group by
J'ai essayé et effectivement ca fonctionne mais si je comprends bien, :
Ca signifie que SQL Serveur est incapable de faire un Group by selectif ?
Je n'ose pas y croire
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 SELECT count(*), PersID AS PersID, PersNom AS Nom, PersPrenom AS Prenom, PersSexID AS Sex, PaysNomFR AS Nationalite, PersGSM AS Mobile, PersTel AS Tel, PersEmail AS Email FROM Personnes_tbl INNER JOIN Link_Contacts_tbl ON PersID = CtacPersID LEFT OUTER JOIN Pays_tbl ON PersNationID = PaysID group by PersID, PersNom, PersPrenom, PersSexID, PaysNomFR, PersGSM, PersTel, PersEmail
Partager