MSSQL instruction Select avec des colonne de type entier... non pas à partir d'une table
J'ai besoin, si possible, une requête t-sql qui, en retournant les valeurs de l'arbitraire d'un tableau, renvoie également un différentiels colonne de type entier avec la valeur = 1 pour la première ligne, 2 pour le deuxième, et ainsi de suite.
Cette colonne ne réside effectivement dans n'importe quelle table, et doit être strictement incrémentielles, parce que la clause ORDER BY peut trier les lignes de la table et je veux supplémentaire de la ligne dans la forme parfaite toujours...
Merci d'avance.
--EDIT
Désolé, j'ai oublié de mentionner, doit s'exécuter sur un Serveur SQL server 2000
Vous devez vous connecter pour publier un commentaire.
Pour SQL 2005 et jusqu'
pour 2000, vous devez faire quelque chose comme ceci
voir aussi ici Numéro De Ligne
Vous pouvez commencer avec un nombre personnalisé et d'un incrément à partir de là, par exemple, vous voulez ajouter un numéro de chèque pour chaque paiement que vous pouvez faire:
vous donnera le bon numéro de chèque pour chaque ligne.
Essayer ROW_NUMBER()
http://msdn.microsoft.com/en-us/library/ms186734.aspx
Exemple:
Il est laid et effectue mal, mais techniquement cela fonctionne sur n'importe quelle table avec au moins un champ unique ET fonctionne dans SQL 2000.
Remarque: Si vous utilisez cette approche et ajouter une clause where à la sélection externe, vous devez l'ajouter à la sélection interne aussi, si vous souhaitez que les numéros d'être continue.