Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

totalisation dans requête (suite)

6 réponses
Avatar
DENNLER Andre
--
Andre

6 réponses

Avatar
DENNLER Andre
Bonjour,

Par une erreur de manipulation c'est partie involontairement.

Voici mon problème :

Il y a quelques semaines ERIC m'a donné la formule suivante pour extraire
les 2 minimas :
SELECT col1, min(col3) AS LesMinimas
FROM RQTEST
GROUP BY col1
HAVING count(col1)>1
UNION
SELECT col1, min(col3)
FROM RQTEST A
WHERE col3 <>(
SELECT Min(col3)
FROM RQTEST
WHERE col1=A.col1
)
GROUP BY col1
;

Cette formule marche sans problème pour 2 minimas, je voudrai cependant
aussi l'utiliser pour 3 minimas, j'ai modifié la ligne :

HAVING count(col1)>1 en HAVING count(col1)>2

Mais cela ne fonctionne pas, y a t'il un autre paramètre à modifier ?

Merci pour votre aide.

J'avis déjà publier cette question dans le dossier initial mais personne n'a
répondu, le délai était peu être trop long.


--
Andre




--
Andre


Avatar
Eric
Bonjour André,

Tu peux faire ceci en attendant mieux, mais la requête utilisant des
CpteDom() ne sera pas des plus rapides.

Dans une nouvelle requête, tu mets RQTEST et les champs suivant:
col1 - Tri croissant - Afficher Oui
col2 - Tri croissant - Afficher Oui
col3 - Tri croissant - Afficher Oui

+ 2 champs calculés :

Compteur1: CpteDom("*";"RQTEST";"col1=" & Car(34) & [col1] & Car(34) & "
and col3<" & col3)+1
avec en critère <=3 pour n'avoir que les 3 premiers temps par club -
Afficher Non

Compteur2: CpteDom("*";"RQTEST";"col1=" & Car(34) & [col1] & Car(34))
avec en critère >=3 pour éliminer les clubs ayant moins de 3 temps -
Afficher Non


J'avis déjà publier cette question dans le dossier initial mais personne n'a
répondu, le délai était peu être trop long.


Je ne pense pas mais personne n'était venu prendre le relais !


Bonjour,

Par une erreur de manipulation c'est partie involontairement.

Voici mon problème :

Il y a quelques semaines ERIC m'a donné la formule suivante pour extraire
les 2 minimas :
SELECT col1, min(col3) AS LesMinimas
FROM RQTEST
GROUP BY col1
HAVING count(col1)>1
UNION
SELECT col1, min(col3)
FROM RQTEST A
WHERE col3 <>(
SELECT Min(col3)
FROM RQTEST
WHERE col1=A.col1
)
GROUP BY col1
;

Cette formule marche sans problème pour 2 minimas, je voudrai cependant
aussi l'utiliser pour 3 minimas, j'ai modifié la ligne :

HAVING count(col1)>1 en HAVING count(col1)>2

Mais cela ne fonctionne pas, y a t'il un autre paramètre à modifier ?

Merci pour votre aide.




--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr

Avatar
Eric
re,

Si l'utilisation des CpteDom() n'est pas trop pénalisante, tu peux
améliorer cette requête en passant un paramètre pour les 2 compteurs,
paramètre que tu dois déclarer au Menu Requêtes|Paramètres
Par exemple : LeNombre et Type de données : Octet
Puis en critère sur les 2 compteurs, tu mets [LeNombre] en lieu et place
de la valeur 3.

Ainsi, à l'ouverture tu peux saisir 1, 2, 3, ... comme nombre de
meilleurs temps souhaités par club.



Bonjour André,

Tu peux faire ceci en attendant mieux, mais la requête utilisant des
CpteDom() ne sera pas des plus rapides.

Dans une nouvelle requête, tu mets RQTEST et les champs suivant:
col1 - Tri croissant - Afficher Oui
col2 - Tri croissant - Afficher Oui
col3 - Tri croissant - Afficher Oui

+ 2 champs calculés :

Compteur1: CpteDom("*";"RQTEST";"col1=" & Car(34) & [col1] & Car(34) & "
and col3<" & col3)+1
avec en critère <=3 pour n'avoir que les 3 premiers temps par club -
Afficher Non

Compteur2: CpteDom("*";"RQTEST";"col1=" & Car(34) & [col1] & Car(34))
avec en critère >=3 pour éliminer les clubs ayant moins de 3 temps -
Afficher Non




--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr

Avatar
DENNLER Andre
Bonjour ERIC,

Merci pour ta réponse, j'ai copié tes compteurs dans ma requête et j'ai un
message d'erreur sur le Compteur1 : Erreur de Syntaxe, opérateur absent.
Je n'ai pas trouvé cette erreur.
Le compteur2 fonctionne.
--
Andre



re,

Si l'utilisation des CpteDom() n'est pas trop pénalisante, tu peux
améliorer cette requête en passant un paramètre pour les 2 compteurs,
paramètre que tu dois déclarer au Menu Requêtes|Paramètres
Par exemple : LeNombre et Type de données : Octet
Puis en critère sur les 2 compteurs, tu mets [LeNombre] en lieu et place
de la valeur 3.

Ainsi, à l'ouverture tu peux saisir 1, 2, 3, ... comme nombre de
meilleurs temps souhaités par club.



Bonjour André,

Tu peux faire ceci en attendant mieux, mais la requête utilisant des
CpteDom() ne sera pas des plus rapides.

Dans une nouvelle requête, tu mets RQTEST et les champs suivant:
col1 - Tri croissant - Afficher Oui
col2 - Tri croissant - Afficher Oui
col3 - Tri croissant - Afficher Oui

+ 2 champs calculés :

Compteur1: CpteDom("*";"RQTEST";"col1=" & Car(34) & [col1] & Car(34) & "
and col3<" & col3)+1
avec en critère <=3 pour n'avoir que les 3 premiers temps par club -
Afficher Non

Compteur2: CpteDom("*";"RQTEST";"col1=" & Car(34) & [col1] & Car(34))
avec en critère >=3 pour éliminer les clubs ayant moins de 3 temps -
Afficher Non




--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr




Avatar
Eric
Bonjour André,

Cela est dû au fait que le lecteur de News a du couper après l'espace
suivant l'ouverture du guillemet de & " AND Col3<" & Col3)+1

De toute façcon, en relisant le post initial, col3 est un champ
date/heure (heure dans ton cas), donc il faut corriger ainsi:
Compteur1:
CpteDom("*";"RQTEST";"col1=" & Car(34) & [col1] & Car(34)
& " and col3<#" & [col3] & "#")+1

Tout sur une seule ligne depuis Compteur1.

Bonjour ERIC,

Merci pour ta réponse, j'ai copié tes compteurs dans ma requête et j'ai un
message d'erreur sur le Compteur1 : Erreur de Syntaxe, opérateur absent.
Je n'ai pas trouvé cette erreur.
Le compteur2 fonctionne.


--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr

Avatar
DENNLER Andre
Salut Eric,

ça marche merci.
--
Andre



Bonjour André,

Cela est dû au fait que le lecteur de News a du couper après l'espace
suivant l'ouverture du guillemet de & " AND Col3<" & Col3)+1

De toute façcon, en relisant le post initial, col3 est un champ
date/heure (heure dans ton cas), donc il faut corriger ainsi:
Compteur1:
CpteDom("*";"RQTEST";"col1=" & Car(34) & [col1] & Car(34)
& " and col3<#" & [col3] & "#")+1

Tout sur une seule ligne depuis Compteur1.

Bonjour ERIC,

Merci pour ta réponse, j'ai copié tes compteurs dans ma requête et j'ai un
message d'erreur sur le Compteur1 : Erreur de Syntaxe, opérateur absent.
Je n'ai pas trouvé cette erreur.
Le compteur2 fonctionne.


--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr