Ajouer une Colonne ID juste avec le SELECT - SQL/NoSQL - Programmation
Marsh Posté le 13-11-2006 à 12:17:00
pourquoi tu ne cree pas une 'vraie' colonne id en autoincrement ?
Marsh Posté le 13-11-2006 à 12:18:25
Car je n'ai pas les droit sur la table qu'on me fournit a part la lecture
Et meme si c'etais le cas, ca ne sert a rien vu que je veut l'id dans un ordre particulier, dans l'ordre de mon select
Donc en gros si je change le ORDER BY bah les ID doivent toujours commencé a 1
Marsh Posté le 13-11-2006 à 15:47:37
Sa parait tellement évident, mais pas si facile a réaliser
Marsh Posté le 13-11-2006 à 16:53:51
Sql Server
Marsh Posté le 13-11-2006 à 17:25:32
raté
avec oracle t'as rownum, mais y'a pas d'équivalent dans sql server.
cependant, avec une fonction analytique, doit y avoir moyen... regarde du côté de "sumby" ou chais plus quoi (qui permet de faire des somme progressives lignes par ligne... si tu sommes sur une constante 1, alors tu devrais pouvoir te faire un compteur)
Marsh Posté le 13-11-2006 à 17:33:01
Arf, encore mieux.
SQL Server 2005 a une fonction "row_number()" :
Code :
|
(par contre je trouve pas les fonctions analytiques )
Marsh Posté le 13-11-2006 à 17:34:45
à noter que pour ton cas, "RANK()" peut être substitué à "ROW_NUMBER()" sans problème.
à tester. à priori, le RANK() permettra de gérer les ex-equo
Marsh Posté le 13-11-2006 à 17:46:55
J'ai trouvé une autre méthode grace a ton intervention MAGICbUZZ
SELECT identity(int, 1,1) as id, Nom, Montant,Site, Junior
into #temp
FROM DEFI_CONTRAT
order by Montant desc
select * from
#temp
Marsh Posté le 13-11-2006 à 19:06:30
euh... si t'as la version 2005, utilise plutôt une des fonctions que je t'ai indiqué, parceque c'est pas top de passer par une table temporaire
Marsh Posté le 13-11-2006 à 12:13:45
Bonjour la compagnie
J'aimerais a travers une requête de SELECTION ajouter un élement ID virtuel.
En gros genre :
Select @i, Nom
FROM TABLE
@i = @i + 1
Sa me permettrais en fait de classer mes resultats par ordre, ce qui permet par exemple de créer un classement de concours .
Merci d'avance
---------------
Je vous préviens, je suis une merde en orthographe, vous me parlé à vos risques et périls !