|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Invité de passage
![]() Inscription : novembre 2002 Messages : 13 ![]() |
Bonjour à tous,
Je bosse actuellement avec php4 et interbase 6.0 et j'ai un probleme avec le fait qu'il n'y a pas de fonction pour connaitre le nombre de ligne résultat d'une requete en php j'ai donc écrit ma propre fonction: Code :
dans ce cas ma fonction devient beaucoup trop lente (et oui elle fait explosé les 30 secondes...) donc je me suis dis utilise lafonction sql COUNT(*) sur ta requete sa doit etre plus rapide... mais je viens de découvrir qu'on ne peut pas faire de SELECT dans un FROM avec interbase je ne vois pas de solutions "rapide" pour mon probléme? quelqu'un a t'il une solution? merci d'avance |
||
|
|
00
|
|
|
#2 |
|
Membre du Club
![]() Inscription : mai 2003 Messages : 140 ![]() |
as tu essayé cette requete ?
|
|
|
00
|
|
|
#3 | |
|
Invité de passage
![]() Inscription : novembre 2002 Messages : 13 ![]() |
Citation:
mais comme je l'ai dis dans mon message (enfin je crois) je ne veux pas simplement compter le nombre d'enregistrement sur une table (autrement je pense que j'y aurais déjà pensé...) mais je veux compter le nombre de résultat pour une requete SQL donc un truc du genre : SELECT COUNT(*) FROM MA_REQUETE mais interbase ne permet pas de mettre de select dans la clause where. j'ai aussi essayé de mettre un "count(nom_d'un_champ_selectionné)" dans la requete mais g une erreur sql: exmple de requete: "SELECT COUNT(*), tab1.champ1, tab1.champ2, tab1.champ3,..., tab2.champ1, tab2.champ2,... FROM tab1,tab2 WHERE tab1.champ1=tab2.champ1 ORDER BY tab1.champ3" erreur: Dynamic SQL Error SQL error code = -104 invalid column reference voila j'espere avoir été un peu plus clair... |
|
|
|
00
|
|
|
#4 |
|
Membre Expert
![]() Frédéric Inscription : octobre 2002 Messages : 1 722 ![]() |
Si vous avez une requete
Code :
SELECT Col1, Col2, Col3 FROM MaTable WHERE Col3='Toto' AND Col6>1000 AND... etc...; Mais on ne peux pas faire de sous-requete dans la clause FROM. Pres un from on ne peux mettre que des tables, des procédures stoquées et des vues. La solution la plus simple (il y en a d'autres en utilisant des PS ou en une requete plus complexe etc...) consiste à exécuter la requete suivante : Code :
SELECT Count(*) FROM MaTable WHERE Col3='Toto' AND Col6>1000 AND... etc...; Après il ne vous reste qu'à exécuter la requete pour récupérer les données. |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com