PC SOFT

PROFESSIONAL NEWSGROUPS
WINDEVWEBDEV and WINDEV Mobile

Home → WINDEV 2024 → Clause SQL Count ne marche pas?
Clause SQL Count ne marche pas?
Started by multon, Mar., 17 2006 11:53 AM - 7 replies
Posted on March, 17 2006 - 11:53 AM
la requête suivante renvoit toujours un "Count" de 0 alors que le fichier Tab_Ville contient 38007 enregistrements:

"Select Count(*) As Compteur From Tab_Ville where VI_VILLE<{param1}"

La fonction Count est pourtant bien détaillée dans la doc et est donc sensée marcher...

(et je ne veux pas faire un "select * from Tab_Ville where VI_VILLE<{param1}"" suivi d'un HNbEnr(), ce serait bcp trop long a éxécuter comme requête).

Et pour etre sur de ma requete j ai essayer de faire:
"Select * From Tab_Ville where VI_VILLE<{param1}" pour voir si le problème ne venait pas de la condition --> résultat j ai 12 632 enregistrements, et pourtant le "Count" renvoie 0...

Des idées?
Posted on March, 17 2006 - 12:11 PM
Bonjour,

As tu essayé quelque chose comme ca :

"Select Count(VI_VILLE) As Compteur From Tab_Ville where VI_VILLE<{param1}"

En esperant que c'est cela, bon continuation et bon developpement.

Chris Letellier
Posted on March, 17 2006 - 12:11 PM
Bonjour,
Remplace * par un nom d'un champ de ta table

au revoir
Posted on March, 17 2006 - 12:11 PM
J ai oublié de préciser que je travaille en C/S...

Autre chose interessant: j ai copier/collé ma requete dans le WDMAP et là ca a marché il m a mis count a 12 632... par contre, la meme requete (et j insiste sur le fait qu il s agit de la meme puisque je l'ai copiée/collée) executée via HExecuteRequêteSQL renvois 0..

Ca vient du C/S???

voila pour info la requete executée par le WDMAP et par mon HExecuteRequeteSQL, ecrite en clair dans le code:

select count(*) as MyVal from TAB_VILLE Where VI_VILLE<'GREALOU'
Posted on March, 17 2006 - 12:42 PM
Malheureusement j ai effectivment essayé de mettre une rubrique dans mon count:

Select Count(VI_VILLE) as COmpteur from TAB_VILLE where VI_VILLE<{param1}

et ca renvoie toujours 0...
Non mais le plus curieux c est que la requête marche parfaitement sous le WDMAP et count renvoie le bon resultat...
Posted on March, 17 2006 - 3:17 PM
Vu la simplicité de la requête, est-ce que tu as essayé de la construire dynamiquement, plutôt que d'utiliser une paramètre ?
Quelquechose du genre:
ReqCompte est une source de données
Requete est une chaine

Requete = "select count(*) from tab_ville where vi_ville < '" + Param1 + "'"
hexecuterequeteSQL(ReqCompte,requete)
....


Frédéric.
Posted on March, 17 2006 - 3:18 PM
Bonjour,

Le code fait-il bien la lecture du résultat ? En effet, j'ai déjà oublié de
lire après l'exécution de la requête ...

HExecuteRequete(Req, ...)
HLitPremier(Req) <<<<< La lecture à ne pas oublier !
Info(Req.Compteur)

J'espère que cette piste est la bonne !

Elian Lacroix


"Arnaud Multon" <multon@statim.fr> a écrit dans le message de news:
441a9166$1@news.pcsoft.fr...

Malheureusement j ai effectivment essayé de mettre une rubrique dans mon
count:

Select Count(VI_VILLE) as COmpteur from TAB_VILLE where VI_VILLE<{param1}

et ca renvoie toujours 0...
Non mais le plus curieux c est que la requête marche parfaitement sous le
WDMAP et count renvoie le bon resultat...
Posted on March, 20 2006 - 1:15 PM
Bonjour,

J'ai buté sur le même problème et ma seule solution a été de créer la requete dont je voulais connaitre le nombre d'enregistrements sans count juste un select et ensuite d'utiliser la fonction HNbenr(NomRequete).