Requête SQL pour access

Requête SQL pour access - SQL/NoSQL - Programmation

Marsh Posté le 22-04-2005 à 14:22:30    

Bonjour à tous, je n'arrive pas à trouver certaines requêtes SQL pour Access.
 
Dans ma table 'action', il y a 4 colonnes:
- 'id_action' qui est un chiffre
- 'temps_passé' dont les données sont rentrées sous forme "hh:mm"
- 'id_agent' qui est un chiffre et sert à dire qui a fait l'action
- 'type' qui est une chaîne de caractères parmi une dizaine de possibilité dont "sécuriser".
 
Je voudrais savoir comment faire 2 requêtes:
 
- la première doit me donner le total de temps passé par tous les agents à effectuer des actions "sécuriser". Le résultat doit être la sous la forme ""hh:mm". Cette requête me bloque car le format de temps ne permet pas de faire des additions.
- La seconde doit me donner le nombre d'agents qui ont effectué des actions "sécuriser" parmi les 15 agents de la liste. Cette requête me bloque car on ne peut pas effectuer de requêtes COUNT DISTINCT. Les sous requêtes que j'ai essayées ne m'ont pas données le résultat attendu, la syntaxe ne devait pas être bonne.
Si quelqu'un peut m'aider… Merci d'avance.

Reply

Marsh Posté le 22-04-2005 à 14:22:30   

Reply

Marsh Posté le 22-04-2005 à 15:14:08    

Voici les requêtes que j'ai essayé, si vous voyez des erreurs, n'hésitez pas!!!
Voici la première requête:
SELECT SUM(action.Temps_passé) as Resultat  
FROM action WHERE Distinct action.type='securiser');
mais la somme ne peut pas se faire avec un format hh:mm.
 
Voici pour la seconde requête:
SELECT COUNT(Distinct action.id_agent) as Resultat  
FROM action  
WHERE Action.type='Sécuriser';
 
Puisque le COUNT n'a pas l'air de pouvoir se faire avec un DISTINCT j'ai essayé une  
 
sous-requête:
SELECT COUNT (Distinct action.id_agent) as Rescultat  
FROM action
WHERE action.id_agent = (SELECT DISTINCT action.id_agent  
   FROM action  
   WHERE Distinct action.type='Sécuriser';);

Reply

Sujets relatifs:

Leave a Replay

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