Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > Requêtes et SQL.
Requêtes et SQL. Tout ce qui concerne vos questions sur les requêtes et le SQL sous Access se trouve ici.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 28/01/2012, 19h57   #1
Invité régulier
 
Homme
Inscription : octobre 2004
Messages : 34
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 51

Informations forums :
Inscription : octobre 2004
Messages : 34
Points : 6
Points : 6
Par défaut Valeur MIN d'un champ calculé

Bonsoir,
Je voudrais extraire avec une requête la plus petite valeur d'un champ calculé d'une autre requête.
J'ai essayé avec la fonction MIN mais cela ne fonctionne pas, la requête me sort un nombre qui commence par un 1 comme s'il s'agissait d'un format "texte" ...
Une idée ?
Merci
micbett est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/01/2012, 20h37   #2
Expert Confirmé Sénior
 
Avatar de f-leb
 
Homme Fabien
Enseignant
Inscription : janvier 2009
Messages : 2 415
Détails du profil
Informations personnelles :
Nom : Homme Fabien
Âge : 41
Localisation : France, Sarthe (Pays de la Loire)

Informations professionnelles :
Activité : Enseignant

Informations forums :
Inscription : janvier 2009
Messages : 2 415
Points : 4 447
Points : 4 447
bonsoir,

on peut voir le code SQL de la requête avec la fonction MIN ?
f-leb est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/01/2012, 20h52   #3
Invité régulier
 
Homme
Inscription : octobre 2004
Messages : 34
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 51

Informations forums :
Inscription : octobre 2004
Messages : 34
Points : 6
Points : 6
N'étant pas un familier, je n'ai pas écrit de code, mais juste sélectionné la fonction MIN en mode création de requête. Voici le code SQL qui en résulte.

Code :
1
2
SELECT Min([ReqTempsFct].[HeuresFonc]) AS [MinDeHeuresFonc]
FROM [ReqTempsFct];
micbett est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/01/2012, 19h38   #4
Expert Confirmé Sénior
 
Avatar de f-leb
 
Homme Fabien
Enseignant
Inscription : janvier 2009
Messages : 2 415
Détails du profil
Informations personnelles :
Nom : Homme Fabien
Âge : 41
Localisation : France, Sarthe (Pays de la Loire)

Informations professionnelles :
Activité : Enseignant

Informations forums :
Inscription : janvier 2009
Messages : 2 415
Points : 4 447
Points : 4 447
bonsoir,

Citation:
Envoyé par micbett Voir le message
... comme s'il s'agissait d'un format "texte" ...
apparemment, c'est bien ce qui se passe mais ça vient de ta requête [ReqTempsFct].

Comment est obtenu [HeuresFonc] ? Quel est son type de données ? Est-il obtenu par un calcul ? Provient-il d'une table externe SQL Server, MySQL,.... ?
As-tu éventuellement essayé avec les fonctions de conversion de type de données ?
f-leb est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/01/2012, 08h08   #5
Invité régulier
 
Homme
Inscription : octobre 2004
Messages : 34
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 51

Informations forums :
Inscription : octobre 2004
Messages : 34
Points : 6
Points : 6
Bonjour,

Le champ [HeuresFonc] est le résultat d'une soustraction effectuée dans ma requête entre deux champs d'une table de ma base dont les types de données sont numériques (réel double)

Dans Excel cela fonctionne très bien "=MIN(...)", je pensais donc que dans access il en serait de même ...

Merci !
micbett est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/01/2012, 11h27   #6
Expert Confirmé Sénior
 
Avatar de f-leb
 
Homme Fabien
Enseignant
Inscription : janvier 2009
Messages : 2 415
Détails du profil
Informations personnelles :
Nom : Homme Fabien
Âge : 41
Localisation : France, Sarthe (Pays de la Loire)

Informations professionnelles :
Activité : Enseignant

Informations forums :
Inscription : janvier 2009
Messages : 2 415
Points : 4 447
Points : 4 447
bonjour,

je ne comprends pas ce qui se passe

Tu peux mettre un bout de ta base (compactée et zippée) en pièce-jointe pour faire des tests ?
f-leb est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/01/2012, 20h43   #7
Invité régulier
 
Homme
Inscription : octobre 2004
Messages : 34
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 51

Informations forums :
Inscription : octobre 2004
Messages : 34
Points : 6
Points : 6
Je t'envoie ça demain, merci.
micbett est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/02/2012, 12h20   #8
Invité régulier
 
Homme
Inscription : octobre 2004
Messages : 34
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 51

Informations forums :
Inscription : octobre 2004
Messages : 34
Points : 6
Points : 6
Bonjour,
Finalement je vais reformuler ma question différemment et essayer d'être plus clair ...

Une requête avec 4 champs issus de champs calculés provenant d'une autre requête de ma base :
Champ 1 = Numéro de série de mes pièces
Champ 2 = son potentiel de fonctionnement avant son rebut
Champ 3 = son potentiel de fonctionnement avant sa révision
Champ 4 = son potentiel de fonctionnement avant sa réparation

Comment dans cette même requête, renseigner un 5ème champ avec la valeur du champs 2,3 ou 4 qui est le plus faible ?

est-ce plus clair ?

Merci
micbett est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/02/2012, 18h11   #9
Expert Confirmé Sénior
 
Avatar de f-leb
 
Homme Fabien
Enseignant
Inscription : janvier 2009
Messages : 2 415
Détails du profil
Informations personnelles :
Nom : Homme Fabien
Âge : 41
Localisation : France, Sarthe (Pays de la Loire)

Informations professionnelles :
Activité : Enseignant

Informations forums :
Inscription : janvier 2009
Messages : 2 415
Points : 4 447
Points : 4 447
bonjour,

en effet, ce n'est plus le même problème...

la contribution de ClaudeLELOUP devrait te convenir: Pour trouver le Minimum ou le Maximum
f-leb est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/02/2012, 20h12   #10
Invité régulier
 
Homme
Inscription : octobre 2004
Messages : 34
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 51

Informations forums :
Inscription : octobre 2004
Messages : 34
Points : 6
Points : 6
Comme vous avez pu deviner, je suis pas un virtuose de l'écriture de codes ...

Je viens de coller la fonction "LeMinimum" dans mon module et essayé de la faire fonctionner depuis ma requête. j'ai des pb de syntaxe ...

Voilà ce que j'ai écrit en entête de mon 5ème champ dans ma requête (pas de SQL)

Citation:
1erPot: LeMinimum([Champ2];[Champ3];[Champ4])
J'ai remplacé les "[]" par des "" et les ";" par des "|" et chaque fois j'ai droit à des bordées d'injures peu cavalières

Dois je passer en mode SQL ?

Merci
micbett est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/02/2012, 20h18   #11
Expert Confirmé Sénior
 
Avatar de f-leb
 
Homme Fabien
Enseignant
Inscription : janvier 2009
Messages : 2 415
Détails du profil
Informations personnelles :
Nom : Homme Fabien
Âge : 41
Localisation : France, Sarthe (Pays de la Loire)

Informations professionnelles :
Activité : Enseignant

Informations forums :
Inscription : janvier 2009
Messages : 2 415
Points : 4 447
Points : 4 447
a priori ce serait plutôt:
Code :
1erPot: LeMinimum([champ2] & "|" & [champ3] & "|" & [champ4])
f-leb est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/02/2012, 20h08   #12
Invité régulier
 
Homme
Inscription : octobre 2004
Messages : 34
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 51

Informations forums :
Inscription : octobre 2004
Messages : 34
Points : 6
Points : 6
Bonsoir,
Effectivement, ça fonctionne,.... mais pas tout le temps ...
Disons 70% Ok et 30% = "les données ne sont pas homogènes"
Pourtant je ne trouve rien d'étrange, tous les champs sont en numérique.
Je n'arrive pas à trouver dans ces 30% un point commun, ça semble complètement aléatoire ...
De plus j'ai souvent des champs nuls et ils ne semblent pas être acceptés.
Je continue de chercher ...
En tout cas merci !
micbett est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/02/2012, 18h50   #13
Expert Confirmé Sénior
 
Avatar de f-leb
 
Homme Fabien
Enseignant
Inscription : janvier 2009
Messages : 2 415
Détails du profil
Informations personnelles :
Nom : Homme Fabien
Âge : 41
Localisation : France, Sarthe (Pays de la Loire)

Informations professionnelles :
Activité : Enseignant

Informations forums :
Inscription : janvier 2009
Messages : 2 415
Points : 4 447
Points : 4 447
bonjour,

c'est ma nouvelle technique... Pour répondre aux problèmes des forumeurs, je soumets le problème dans d'autres discussions

Pour trouver le Minimum ou le Maximum, cas des valeurs Null

Micbett, tu penseras à plusser Claude que j'ai mis à contribution pour toi

Merci Claude
f-leb est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/02/2012, 19h44   #14
Invité régulier
 
Homme
Inscription : octobre 2004
Messages : 34
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 51

Informations forums :
Inscription : octobre 2004
Messages : 34
Points : 6
Points : 6
Bonsoir,

Merci pour tous ces efforts !!!

Je viens de coller la fonction TriABulle dans un module et taper ceci dans mon champ de requête :
Citation:
Potminim : TriABulle([PotLF] & "|" & [Mod RSL] & "|" & [PotEQ] & "|" & [PotSS] ,"Min") AS [Min]
Le pb est que j'ai un message qui me dit que j'ai une erreur de syntaxe sur la virgule devant "Min")

J'ai essayé pas mal de choses mais sans succès
micbett est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/02/2012, 15h39   #15
Expert Confirmé Sénior
 
Avatar de f-leb
 
Homme Fabien
Enseignant
Inscription : janvier 2009
Messages : 2 415
Détails du profil
Informations personnelles :
Nom : Homme Fabien
Âge : 41
Localisation : France, Sarthe (Pays de la Loire)

Informations professionnelles :
Activité : Enseignant

Informations forums :
Inscription : janvier 2009
Messages : 2 415
Points : 4 447
Points : 4 447
bonjour,

Citation:
...j'ai un message qui me dit que j'ai une erreur de syntaxe sur la virgule devant "Min")
dans l'assistant Requête, les arguments sont séparés par des " ; ".

Le "AS [Min]" est de trop.

Code :
Potminim : TriABulle([PotLF] & "|" & [Mod RSL] & "|" & [PotEQ] & "|" & [PotSS] ;"Min")
f-leb est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/02/2012, 20h23   #16
Invité régulier
 
Homme
Inscription : octobre 2004
Messages : 34
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 51

Informations forums :
Inscription : octobre 2004
Messages : 34
Points : 6
Points : 6
Bonsoir,
La syntaxe fonctionne mais j'ai maintenant systématiquement sur tous les enregistrement un message "les données ne sont pas homogènes"
Je vais regarder si je ne peux pas m'en sortir autrement ...
Merci encore !
micbett est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/02/2012, 22h26   #17
Expert Confirmé Sénior
 
Avatar de f-leb
 
Homme Fabien
Enseignant
Inscription : janvier 2009
Messages : 2 415
Détails du profil
Informations personnelles :
Nom : Homme Fabien
Âge : 41
Localisation : France, Sarthe (Pays de la Loire)

Informations professionnelles :
Activité : Enseignant

Informations forums :
Inscription : janvier 2009
Messages : 2 415
Points : 4 447
Points : 4 447
Bonsoir,

Je ne sais plus

Essaye avec la fonction getMin de Philben

Code :
Potminim : getMin([PotLF] ;[Mod RSL] ; [PotEQ] ; [PotSS])
[Mod RSL] est bien numérique comme [PotXX] ?
f-leb est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 17h17.


 
 
 
 
Partenaires

Hébergement Web