{SQL Server} Selectionner premier et dernier

Résolu
powerwave Messages postés 38 Date d'inscription   Statut Membre Dernière intervention   -  
powerwave Messages postés 38 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
svp, je veux selectionner le premier, le suivant, precedent et le dernier enregistrement d'une table (sans trier)
naviguer en gros :)

je met chaque commande dans une procedure, puis je fais appelle a cette derniere grace a un bouton sur VB.net, et sa l'affiche sur mes textbox, (je sais, c'est plus facile sur une listview mais bon je ne dois pas l'utiliser :) ) l'ado.net quoi :D mais il me faut les commandes SQL

merci d'avance
A voir également:

7 réponses

fiu
 
Bonjour,
premier, suivant, precedent et dernier sont des notions qui n'ont un sens que dans un ensemble ordonné (dans un tas de patates, tu n'as pas une première patate ! pas plus qu'une dernière)
1
powerwave Messages postés 38 Date d'inscription   Statut Membre Dernière intervention   10
 
ok, ben si t'as la solution avec un order by, je suis proneur ;D
1
toma_f_1 Messages postés 89 Date d'inscription   Statut Membre Dernière intervention   7
 
bonjour powerwave

regarde la commande sql LIMIT, ca répond peut être à ton problème.
1
powerwave Messages postés 38 Date d'inscription   Statut Membre Dernière intervention   10
 
il me souligne la commande limit qd je la tappe et erreur au moment de l'execution (je suis sur SQL server 2008 et pas sur mySQL)

select num from employee limit 0,1
ou select num from employee where limit 0,1

de l'aide please :(
1

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
toma_f_1 Messages postés 89 Date d'inscription   Statut Membre Dernière intervention   7
 
ah effectivement limit est propre à mysql ( :-) )

désolé peut pas t'aider. google sera ton ami je pense...

apparement il y a une bidouille en utilisant l'opérateur TOP.
1
fiu
 
Salut,
J'ai pas MSSQL2008.

chez moi, pour trouver le premier et le dernier événement dans mon calendrier, je fais
select * from calendrier
where dtevenement in (
select min(dtEvenement) from calendrier where dtEvenement between '2009-12-01' and '2010-12-31'
union
select max(dtEvenement) from calendrier where dtEvenement between '2009-12-01' and '2010-12-31'
);
je te laisse adapater ça.

Si par hasard, ton critère pour repérer le premier ou le dernier de ton ensemble est sur 2 colonnes, essaie
select * from taTable
where (expression1, expression2) in (
select expressionA, expressionB from taTable where ...
union
select expressionC, expressionD from taTable where ...
);
1
powerwave Messages postés 38 Date d'inscription   Statut Membre Dernière intervention   10
 
ok merci
1