Je cherche un moyen de numéroter séquentiellement des lignes dans un jeu de résultats (pas une table). Essentiellement, je commence avec une requête comme suit:Technique Pure-SQL pour les lignes de numérotation automatique dans le jeu de résultats
SELECT id, name FROM people WHERE name = 'Spiewak'
Les id
s ne sont évidemment pas une vraie séquence (par exemple 1, 2, 3, 4
). Ce dont j'ai besoin, c'est d'une autre colonne dans le jeu de résultats qui contient ces auto-numérotations. Je suis prêt à utiliser une fonction SQL si je le dois, mais je préfère le faire sans utiliser d'extension sur la spécification ANSI.
Plate-forme est MySQL, mais la technique devrait être multi-plateforme si possible (d'où le désir d'éviter les extensions non-standard).
C'est intelligent, mais la performance doit être HORRIBLE. Pas que je dise qu'il y ait une meilleure réponse, juste frémir au O (n^2). –
Wow! C'est très intelligent. Je ne savais même pas que vous pouviez utiliser des sous-requêtes pour définir les champs res de cette façon. –
D'accord que la performance pourrait être meilleure, mais si vous êtes limité à ansi c'est ce que vous avez à faire. Parfois, les gens vont pré-calculer ces résultats pour accélérer les choses. –