Précédent   Forum des professionnels en informatique > Bases de données > MS SQL-Server > Développement
Développement Forum d'entraide sur le Transact-SQL, le CLR, les procédures stockées, les triggers, les requêtes SQL
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 22/07/2011, 15h13   #1
Membre chevronné
 
Avatar de J0r_x
 
Homme
Analyste - Programmeur
Inscription : mai 2006
Messages : 712
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Marne (Champagne Ardenne)

Informations professionnelles :
Activité : Analyste - Programmeur
Secteur : Administration - Collectivité locale

Informations forums :
Inscription : mai 2006
Messages : 712
Points : 607
Points : 607
Par défaut Trie de données

Je refais mon premier poste ce n'était pas clair.

J'ai une liste de mandat, ces mandats peuvent être modifiés et/ou annulés, quand c'est le cas un mandat de modification ou d'annulation est créé faisant référence au mandat d'origine, mais les mandats d'annulations et de modifications peuvent eux aussi être modifiés, on créé alors un autre mandat de modification ou d'annulation faisant référence au mandat d'origine (dans ce cas le mandat d'annulation ou de modification), etc...

J'arrive à récupérer tous les mandats orgine, modif, annul, modif d'annul, modif de modif grâce à une requête récursive.
Le problème c'est le trie de mes données pour faire le lien entre les différents mandats.

Exemple :

Mandat 000001, Modifié par le mandat 990001.
Mandat 990001, Annulé par le mandat 900001.

J'ai comme résultat :

Mandat | Mandat Init
000001 | 000000
990001 | 000001
900001 | 990001

Jusque là, tout va bien, le problème c'est que j'utilise cette table temporaire (créée par la requête récursive) pour afficher d'autres informations nécessitant un GROUP BY, ce qui là me tri ma table, je cherche donc un moyen après le GROUP BY de trier mes résultats pour qu'ils soient dans un ordre logique (celui ci-dessus), mais je ne sais pas comment faire.
__________________
Aucune aide par MP, utilisez le forum.
J0r_x est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/07/2011, 09h42   #2
Rédacteur/Modérateur

 
Avatar de SQLpro
 
Homme Frédéric BROUARD
Expert SGBDR & SQL
Inscription : mai 2002
Messages : 10 954
Détails du profil
Informations personnelles :
Nom : Homme Frédéric BROUARD
Localisation : France

Informations professionnelles :
Activité : Expert SGBDR & SQL
Secteur : Conseil

Informations forums :
Inscription : mai 2002
Messages : 10 954
Points : 17 774
Points : 17 774
Citation:
Envoyé par J0r_x Voir le message
Je ne sais si je suis très clair.
pas du tout !

Quel sont les critère qui décide si une ligne est nouvelle ou ancienne ?

A +
__________________
Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
Site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
Blog SQL, SQL Server, modélisation données : http://blog.developpez.com/sqlpro
http://www.sqlspot.com : modélisation, conseils, audit, optimisation, formation
* * * * * Enseignant CNAM PACA - ISEN Toulon - CESI Aix en Provence * * * * *
SQLpro est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/07/2011, 11h49   #3
Membre chevronné
 
Avatar de J0r_x
 
Homme
Analyste - Programmeur
Inscription : mai 2006
Messages : 712
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Marne (Champagne Ardenne)

Informations professionnelles :
Activité : Analyste - Programmeur
Secteur : Administration - Collectivité locale

Informations forums :
Inscription : mai 2006
Messages : 712
Points : 607
Points : 607
J'ai refais mon premier poste j'espère que je suis plus clair
__________________
Aucune aide par MP, utilisez le forum.
J0r_x est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/07/2011, 11h59   #4
Rédacteur/Modérateur

 
Avatar de SQLpro
 
Homme Frédéric BROUARD
Expert SGBDR & SQL
Inscription : mai 2002
Messages : 10 954
Détails du profil
Informations personnelles :
Nom : Homme Frédéric BROUARD
Localisation : France

Informations professionnelles :
Activité : Expert SGBDR & SQL
Secteur : Conseil

Informations forums :
Inscription : mai 2002
Messages : 10 954
Points : 17 774
Points : 17 774
Citation:
Envoyé par J0r_x Voir le message
...le problème c'est que j'utilise cette table temporaire (créée par la requête récursive) pour afficher d'autres informations nécessitant un GROUP BY, ce qui là me tri ma table, je cherche donc un moyen après le GROUP BY de trier mes résultats pour qu'ils soient dans un ordre logique (celui ci-dessus), mais je ne sais pas comment faire.
Un GROUP BY ne trie pas une table ! Il fait une opération de groupage et le groupage n'a rien à voir avec un tri.
Pour faire un tri il faut une clause ORDER BY.
Pourquoi avez vous besoin du GROUP BY ? Avez vous un calcul d'agrégat ??? (SUM, COUNT, AVG, MAX, MIN...);
Si ce n'est pas le cas le GROUPAGE ne sert à rien qu'a faire perdre du temps....

Postez intégralement votre requête/traitement.

A +
__________________
Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
Site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
Blog SQL, SQL Server, modélisation données : http://blog.developpez.com/sqlpro
http://www.sqlspot.com : modélisation, conseils, audit, optimisation, formation
* * * * * Enseignant CNAM PACA - ISEN Toulon - CESI Aix en Provence * * * * *
SQLpro est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/07/2011, 12h02   #5
Membre chevronné
 
Avatar de J0r_x
 
Homme
Analyste - Programmeur
Inscription : mai 2006
Messages : 712
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Marne (Champagne Ardenne)

Informations professionnelles :
Activité : Analyste - Programmeur
Secteur : Administration - Collectivité locale

Informations forums :
Inscription : mai 2006
Messages : 712
Points : 607
Points : 607
J'ai manqué un peu de temps, j'ai donc fait la récursivité par procédure dans mon application et ça fonctionne, je me remettrais peut être dessus si j'ai du temps plus tard.

Merci.
__________________
Aucune aide par MP, utilisez le forum.
J0r_x 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 07h17.


 
 
 
 
Partenaires

Hébergement Web