SQL : équivalent LIMIT ?

SQL : équivalent LIMIT ? - SQL/NoSQL - Programmation

Marsh Posté le 26-04-2005 à 09:05:26    

Bonjour,
 
je dois faire un affichage page par page en delphi, ma requête SQL se fait sur une base AS400
et les mots clef LIMIT 1,10 comme en MySQL/PHP ne fonctionne pas.
 

Code :
  1. SELECT * FROM maTable LIMIT 1,10


en regardant a droite a gauche, la syntaxe LIMIT a l'air propre a MySQL,  
ya t'il un équivalent a LIMIT ?
 
Merci d'avance

Reply

Marsh Posté le 26-04-2005 à 09:05:26   

Reply

Marsh Posté le 26-04-2005 à 10:22:36    

sur sql server y'a TOP
 
genre select TOP 10
 
ca doit etre du sql standard je pense...

Reply

Marsh Posté le 26-04-2005 à 10:28:52    

Tamahome a écrit :

sur sql server y'a TOP
 
genre select TOP 10
 
ca doit etre du sql standard je pense...


 
 
ouais mais si c'est dans le cas d'une pagination, ça va poser soucis.
Jme rapelle m'être galéré avec cette connerie de LIMIT.
Regarde ça, ça peut eventuellement t'interesser : http://www.devparadise.com/technoweb/code/sql/a453.php


---------------
Cptn.Barberousse
Reply

Marsh Posté le 26-04-2005 à 10:30:49    

bah suffit de jouer avec les order et les desc / asc et le top :o
 
Edit : il veut de la ligne 20 a 30 :
 
 

Code :
  1. SELECT TOP (30-20) FROM maTable where maTableID  in
  2. (SELECT TOP 30 * FROM maTable ORDER BY maTableID ASC)
  3. ORDER BY maTableID DESC


 
un truc dans le genre quoi :o


Message édité par Tamahome le 26-04-2005 à 10:32:55

---------------
Hobby eien /人◕ ‿‿ ◕人\
Reply

Marsh Posté le 26-04-2005 à 14:01:53    

merci pour votre aide, j'ai également trouvé une autre méthode (je n'ai pas encore testé)
http://php.developpez.com/faq/?page=bdd_oracle
 
je ne sais pas laquelle est la plus rapide, mais je la trouve plus compréhensible :)

Reply

Marsh Posté le 26-04-2005 à 15:27:50    

Bon ça ne marche pas :(
 
j'ai l'impression qu'il n'aime pas :

Code :
  1. SELECT * FROM (SELECT * FROM ... WHERE ... )


 
il fo pas un IN ou quelque chose ds le genre ?

Reply

Marsh Posté le 26-04-2005 à 16:24:12    

Tamahome a écrit :

sur sql server y'a TOP
 
genre select TOP 10
 
ca doit etre du sql standard je pense...


Essaye TOP sous oracle, qu'on rigole.:o
Je connais rien qui marche partout...


---------------
Can't buy what I want because it's free -
Reply

Marsh Posté le 26-04-2005 à 16:33:18    

skeye a écrit :

Essaye TOP sous oracle, qu'on rigole.:o
Je connais rien qui marche partout...


 
hé ho ca va hein... :kaola:


---------------
Hobby eien /人◕ ‿‿ ◕人\
Reply

Marsh Posté le 26-04-2005 à 16:36:46    

flam182 a écrit :

Bon ça ne marche pas :(
 
j'ai l'impression qu'il n'aime pas :

Code :
  1. SELECT * FROM (SELECT * FROM ... WHERE ... )


 
il fo pas un IN ou quelque chose ds le genre ?


AMHA cette méthode est mauvaise / mal adaptée.
Quitte à de tte manière exécuter la requête qui retourne tous les enregistrements, autant ne faire l'équivalent du limit que dans le langage qui récupère le résultat, non?


---------------
Can't buy what I want because it's free -
Reply

Marsh Posté le 26-04-2005 à 16:36:59    

Tamahome a écrit :

hé ho ca va hein... :kaola:


[:skeye]


---------------
Can't buy what I want because it's free -
Reply

Marsh Posté le 26-04-2005 à 16:36:59   

Reply

Marsh Posté le 27-04-2005 à 09:12:25    

Le TOP n'as pas l'air géré, j'ai donc fais l'équivalent limit directement en delphi comme là suggéré skeye.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed