Equivalent de l instruction LIMIT en SQL Server - SQL/NoSQL - Programmation
Marsh Posté le 14-05-2002 à 16:08:19
Malheureusement je n'ai rien trouvé de mieux que "top" qui n'est pas top dans ce cas là
Marsh Posté le 14-05-2002 à 16:16:32
ouep visiblement y a ke dal ca me fait chier à cause de ça va falloir faire 2 fois plus de traitement en ASP pour u ntruc tout con !
Marsh Posté le 02-06-2002 à 20:16:19
je crois pas que ca existe, effectivement.
Par contre, tu peux à la rigueur ajouter un champ calculé auto-incrémental à ta requete, du genre :
SELECT identity(x,y) as identite, champ_a, champ_b FROM ma_table
verifier les param de la fonction identity, je m'en souviens plus par coeur.
Ensuite tu fais un select de cette requte en specifiant ton intervalle dans la clause where:
SELECT t.*
FROM (SELECT identity(x,y) as identite, champ_a, champ_b FROM ma_table....) t
WHERE t.identite between debut and fin
c'est pas ultime, mais c'est un palliatif pas trop déguelasse...
Marsh Posté le 02-06-2002 à 20:43:05
y'a pas d'équivalent.
une solution :
tu fais une requete count qui récupère le nombre de résultat.
puis tu fais une 2e requete, si tu veux les engistrements 61 à 70 , faut faire par exemple :
SELECT TOP 10 FROM matable WHERE id IN (SELECT TOP (nbresult-60) id FROM matable ORDER BY ordre_inverse) ORDER BY ordre
donc c pas génial. en pratique, il est très souven bcp plus rapide de tout sélectionner et de traiter en asp (si c'est ça que t'utilise) pour avoir que les enregistrements qui t'intéressent
Marsh Posté le 02-06-2002 à 20:47:32
siewn a écrit a écrit : y'a pas d'équivalent. une solution : tu fais une requete count qui récupère le nombre de résultat. puis tu fais une 2e requete, si tu veux les engistrements 61 à 70 , faut faire par exemple : SELECT TOP 10 FROM matable WHERE id IN (SELECT TOP (nbresult-60) id FROM matable ORDER BY ordre_inverse) ORDER BY ordre donc c pas génial. en pratique, il est très souven bcp plus rapide de tout sélectionner et de traiter en asp (si c'est ça que t'utilise) pour avoir que les enregistrements qui t'intéressent |
et heuuu les curseurs ?
Marsh Posté le 02-06-2002 à 20:54:12
http://www.swynk.com/friends/achigrik/usecursor.asp
enfin apparement ils disent qu'il faut préférer un curseur à un select, donc finalement ta solution avec un subselect me parait mieux.
Marsh Posté le 14-05-2002 à 15:47:31
Bonjour j utilise SQL Server de Microsoft et je voudrais savoir si il existait un quivalent de LIMIT (pour specifier un intervalle specifique, donc l'opérateur TOP ne me convient pas)
Merci...