IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Requêtes et SQL. Discussion :

Requête avec filtre sur 2 champs [AC-2010]


Sujet :

Requêtes et SQL.

  1. #1
    Membre à l'essai
    Homme Profil pro
    Multimédia
    Inscrit en
    Septembre 2014
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Multimédia
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Septembre 2014
    Messages : 38
    Points : 13
    Points
    13
    Par défaut Requête avec filtre sur 2 champs
    Bonsoir,

    Je sèche sur la manière de trouver une solution logique à ceci (si vous avez une piste je suis preneur :-) ) :

    La situation :
    Un formulaire pour les membres/élèves qui contient 2 champs prof (basés sur 2 tables identiques) + 2 champs jour associés (basés sur 2 autres tables identiques)
    Création d'une requête pour la réalisation d'état
    Un état doit donner la liste des élèves qui ont cours avec un prof.
    La difficulté est que certains jours le prof 1 est dans le premier champ et parfois dans le deuxième champ
    Donc quand je filtre pour le prof 1 dans les 2 champs dédiés, j'obtiens aussi le nom d'un autre prof pour le jour qui ne concerne pas le premier prof.
    Comme n'afficher que les jour 1 ou 2 pour un prof en particulier ?

    Exemple : je ne veux afficher que les résultats pour Caroline, et donc avoir une colonne avec le jour (basé sur les 2 champs jour 1 et jour 2) la concernant, c'est possible ?
    Ou alors n'afficher que les jours qui concernent Caroline, qu'ils soient de Jours 1 ou de jours 2

    Voilà le résultat sans filtre :

    Nom : Req EdT 1.JPG
Affichages : 968
Taille : 28,6 Ko

  2. #2
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 663
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 663
    Points : 14 651
    Points
    14 651
    Par défaut
    bonjour,
    quand je filtre pour le prof 1 dans les 2 champs dédiés, j'obtiens aussi le nom d'un autre prof pour le jour qui ne concerne pas le premier prof.
    peut-on voir comment tu filtres ?

    Sinon, si la sélection se fait dans la requête, en mode création, il faut mettre les critères sur 2 lignes, ce qui correspond au mot-clé OU:
    première ligne, sous [Prof Tennis 1].[Nom Prof], mettre le contrôle du formulaire contenant le nom du prof
    deuxième ligne, sous [Prof Tennis 2].[Nom Prof], mettre le contrôle du formulaire contenant le nom du prof
    cela donne ça:

    Nom : _0.JPG
Affichages : 993
Taille : 38,4 Ko
    Quand on est derrière l'écran on n'a aucun clavier sous les mains ...
    ah non ? donc devant l'écran c'est la connectique ?

  3. #3
    Membre à l'essai
    Homme Profil pro
    Multimédia
    Inscrit en
    Septembre 2014
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Multimédia
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Septembre 2014
    Messages : 38
    Points : 13
    Points
    13
    Par défaut
    Merci tee_grandbois,

    Mais cela donne le même résultat qu'avant (voir image dans mon message précédent), affichage en plus du nom du 2è prof.
    Alors que je ne voudrais afficher que le nom demandé.

    Il est vrai que le formulaire utilise
    2tables avec les noms déjà encodés (accessible via déroulant)
    et 2 tables pour les jours encodés (accessible via déroulant)
    cela complexifiant sans doute le filtrage ?

    Nom : Req EdT 5.JPG
Affichages : 930
Taille : 30,4 Ko

    Nom : Req EdT 3.JPG
Affichages : 950
Taille : 34,4 Ko

    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    SELECT [Activités générales].Titre, [Activités générales].Nom, [Activités générales].Prénom, [Activités générales].[Date Naissance], [Activités générales].[Tél Privé], [Activités générales].GSM, [Activités générales].[E-mail], [Activités générales].Période, [Prof Tennis 1].[Nom Prof], [Jours 1].[Jour 1], [Prof Tennis 2].[Nom Prof], [Jours 2].[Jour 2]
    FROM ((([Activités générales] INNER JOIN [Prof Tennis 1] ON [Activités générales].[Prof 1] = [Prof Tennis 1].N°) INNER JOIN [Prof Tennis 2] ON [Activités générales].[Prof 2] = [Prof Tennis 2].N°) INNER JOIN [Jours 2] ON [Activités générales].[Jour 2] = [Jours 2].N°) INNER JOIN [Jours 1] ON [Activités générales].[Jour 1] = [Jours 1].N°
    GROUP BY [Activités générales].Titre, [Activités générales].Nom, [Activités générales].Prénom, [Activités générales].[Date Naissance], [Activités générales].[Tél Privé], [Activités générales].GSM, [Activités générales].[E-mail], [Activités générales].Période, [Prof Tennis 1].[Nom Prof], [Jours 1].[Jour 1], [Prof Tennis 2].[Nom Prof], [Jours 2].[Jour 2]
    HAVING ((([Prof Tennis 1].[Nom Prof])=[Formulaires]![Encodage Ecole de tennis]![Prof 1])) OR ((([Prof Tennis 2].[Nom Prof])=[Formulaires]![Encodage Ecole de tennis]![Prof 2]))
    ORDER BY [Activités générales].Nom, [Prof Tennis 1].[Nom Prof], [Prof Tennis 2].[Nom Prof];

  4. #4
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 663
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 663
    Points : 14 651
    Points
    14 651
    Par défaut
    Mais cela donne le même résultat qu'avant (voir image dans mon message précédent), affichage en plus du nom du 2è prof.
    Alors que je ne voudrais afficher que le nom demandé.
    TOUS les enregistrements ont "Caroline" dans au moins un des 2 champs, on ne peut pas faire disparaitre le contenu de la deuxième colonne ... sinon il faut mettre qu'une seule colonne par ligne
    Quand on est derrière l'écran on n'a aucun clavier sous les mains ...
    ah non ? donc devant l'écran c'est la connectique ?

  5. #5
    Membre à l'essai
    Homme Profil pro
    Multimédia
    Inscrit en
    Septembre 2014
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Multimédia
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Septembre 2014
    Messages : 38
    Points : 13
    Points
    13
    Par défaut
    Ok tee_grandbois,

    je devrais peut être repartir d'une page blanche pour pouvoir créer une requête utilisable comme souhaitée je suppose ?

    Comment devrais je concevoir le formulaire pour que la requête puisse filtrer sur le nom d'un prof (et si possible sur un jour) ? Et pour en final imprimer l'état du résultat (pour les prof concernés).
    Pour rappel, il s'agit de fiches de membres qui peuvent avoir 2 professeurs différents sur une semaine et à des jours différents pour ces 2 prof.

    Tout grand merci pour la piste suggérée

  6. #6
    Modérateur
    Avatar de bertiny
    Homme Profil pro
    Enseignant
    Inscrit en
    Mars 2013
    Messages
    1 282
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2013
    Messages : 1 282
    Points : 1 831
    Points
    1 831
    Billets dans le blog
    1
    Par défaut
    Bonjour
    Si je peux apporter une contribution concernant ceci,
    Citation Envoyé par JKT007
    2tables avec les noms déjà encodés (accessible via déroulant)
    et 2 tables pour les jours encodés (accessible via déroulant)
    Il faut vérifier à ce niveau que le nombre de colonnes de tes listes déroulante est 1. Sinon tu feras une comparaison entre une valeur entière (Clé primaire de la table Prof venant de la liste déroulante) et un texte court (nom du prof renvoyé par la requête).
    Dans le cas contraire tu peux mettre ce critère sur l'ID de la table Prof au lieu de mettre au niveau du nom.
    Cordialement.
    Le monde évolue et nous avec. La technologie change les idées de ceux qui s'intéressent et pensent qu'il est nécessaire de changer.
    Oh là!! Que c'est bien de trouver la solution à un problème

    Pensons à améliorer nos connaissances en toute humilité car on apprend tous tous les jours !!!

  7. #7
    Membre à l'essai
    Homme Profil pro
    Multimédia
    Inscrit en
    Septembre 2014
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Multimédia
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Septembre 2014
    Messages : 38
    Points : 13
    Points
    13
    Par défaut
    Bonsoir Bertiny,

    Merci pour ta réponse.

    Je te confirme que le nombre de colonnes listes déroulantes est bien sur 1.

    Je pense qu'il n'y a pas de solution simple au problème soulevé.
    Quand on regarde la structure de la base, qui a été créé il y a plus de 20 ans par une personne apparemment plus portée sur les tableurs, il est difficile de répondre à la demande citée plus haut.

    Il faudrait sans doute tout refaire depuis le début, en multipliant les tables, mais avec les plus de 6000 fiches déjà encodées....

    Cordialement

  8. #8
    Modérateur
    Avatar de bertiny
    Homme Profil pro
    Enseignant
    Inscrit en
    Mars 2013
    Messages
    1 282
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2013
    Messages : 1 282
    Points : 1 831
    Points
    1 831
    Billets dans le blog
    1
    Par défaut
    Bonjour
    Je pense qu'il n'y a pas de solution simple au problème soulevé.
    Çà dépend de ce que tu veux exactement faire car nous essayons de comprendre avec toi le problème afin d'apporter des éléments de réponse.
    Le monde évolue et nous avec. La technologie change les idées de ceux qui s'intéressent et pensent qu'il est nécessaire de changer.
    Oh là!! Que c'est bien de trouver la solution à un problème

    Pensons à améliorer nos connaissances en toute humilité car on apprend tous tous les jours !!!

  9. #9
    Membre à l'essai
    Homme Profil pro
    Multimédia
    Inscrit en
    Septembre 2014
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Multimédia
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Septembre 2014
    Messages : 38
    Points : 13
    Points
    13
    Par défaut
    La demande que l'on m'a fait parait simple mais sa mise en oeuvre....

    Il est souhaité d'imprimer (via état) la liste des élèves par prof (et par jour)

    Si cela est simple lorsqu'il n'y a qu'un champs "Prof" dans le formulaire, tout se complique dans le cas présent.

    Sur la fiche d'inscription pour l'activité "tennis", il est encodé le nom du premier prof ainsi que le jour choisi, et dans le cas d'un deuxième prof également le jour choisi pour celui-ci

    Donc en faisant une requête (filtrage) je devrais obtenir le résultat voulu, sauf que je me retrouve dans le mur car la gestion de 2 profs et de 2 jours associés ....
    Cela en sachant qu'un prof dans la case Prof 1 peut se retrouver en case Prof 2 suivant l'ordre du choix lors de l'encodage...Et idem pour les jours...
    Et donc le filtrage devrait ne donner que les fiches avec le nom du prof choisis (qu'il soit en case 1 ou 2) avec le jour choisis, et là ...

    Actuellement, en plus de la grosse table "Activités générales", il y a les petites tables, "Jour" et "Prof" qui servent pour encoder le nom du prof et le jour choisis dans la fiche du membre.

    Merci bertiny

  10. #10
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 663
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 663
    Points : 14 651
    Points
    14 651
    Par défaut
    Citation Envoyé par JLT007 Voir le message
    Donc en faisant une requête (filtrage) je devrais obtenir le résultat voulu, sauf que je me retrouve dans le mur car la gestion de 2 profs et de 2 jours associés ....
    Cela en sachant qu'un prof dans la case Prof 1 peut se retrouver en case Prof 2 suivant l'ordre du choix lors de l'encodage...Et idem pour les jours...
    Et donc le filtrage devrait ne donner que les fiches avec le nom du prof choisis (qu'il soit en case 1 ou 2) avec le jour choisis, et là ...
    ainsi que je le disais plus haut, il faudrait qu'il n'y ait qu'une seule colonne pour filtrer correctement, car avec 2 colonnes on ne peut pas supprimer la seconde si elle ne contient pas le bon argument. La solution que je vois, c'est de passer par une requête union qui transforme la requête de 2 colonnes à une seule.
    Essaie ce code (pas testé):
    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    SELECT *  from(
    SELECT [Activités générales].Titre,
     [Activités générales].Nom,
     [Activités générales].Prénom,
     [Activités générales].[Date Naissance],
     [Activités générales].[Tél Privé], 
     [Activités générales].GSM,
     [Activités générales].[E-mail],
     [Activités générales].Période,
     [Prof Tennis 1].[Nom Prof] as Nom_Prof,
     [Jours 1].[Jour 1] as Nom_Jour
    FROM [Activités générales] INNER JOIN [Prof Tennis 1] ON [Activités générales].[Prof 1] = [Prof Tennis 1].N° 
    (INNER JOIN [Jours 1] ON [Activités générales].[Jour 1] = [Jours 1].N°)
    UNION
    SELECT [Activités générales].Titre,
     [Activités générales].Nom,
     [Activités générales].Prénom,
     [Activités générales].[Date Naissance],
     [Activités générales].[Tél Privé], 
     [Activités générales].GSM,
     [Activités générales].[E-mail],
     [Activités générales].Période,
     [Prof Tennis 2].[Nom Prof],
     [Jours 2].[Jour 2]
    FROM [Activités générales] INNER JOIN [Prof Tennis 2] ON [Activités générales].[Prof 2] = [Prof Tennis 2].N° 
    (INNER JOIN [Jours 2] ON [Activités générales].[Jour 2] = [Jours 2].N°)
    ) as activite
    WHERE [activite].[Nom_Prof]=[Formulaires]![Encodage Ecole de tennis]![Prof 1]
    ;
    pour autant, la requête union peut réserver des surprises car elle a tendance à regrouper les doublons, par exemple. Cela dit c'est ce que tu fais dans la requête d'origine avec le group by.
    Quand on est derrière l'écran on n'a aucun clavier sous les mains ...
    ah non ? donc devant l'écran c'est la connectique ?

  11. #11
    Membre à l'essai
    Homme Profil pro
    Multimédia
    Inscrit en
    Septembre 2014
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Multimédia
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Septembre 2014
    Messages : 38
    Points : 13
    Points
    13
    Par défaut
    Bonsoir tee_grandbois,

    ton idée est intéressante, j'ai essayé ton code mais voilà le résultat, et j'avoue être un peu perdu là :

    Nom : Req EdT 6.JPG
Affichages : 880
Taille : 31,9 Ko

  12. #12
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 663
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 663
    Points : 14 651
    Points
    14 651
    Par défaut
    bonsoir,
    comme je l'ai dit, j'ai fais ça à main levée sans pouvoir tester ...
    pourrais-tu me poster une copie de ta base avec uniquement les structures (c'est à dire sans les données) des tables utilisées dans la requête ?
    il faut la compresser (format zip ou 7z) pour pouvoir l'attacher.
    Quand on est derrière l'écran on n'a aucun clavier sous les mains ...
    ah non ? donc devant l'écran c'est la connectique ?

  13. #13
    Membre à l'essai
    Homme Profil pro
    Multimédia
    Inscrit en
    Septembre 2014
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Multimédia
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Septembre 2014
    Messages : 38
    Points : 13
    Points
    13
    Par défaut
    Bonsoir,

    Voici en annexe le fichier zip avec les structures des éléments concernés de la base
    (nouvelle version voir plus bas)

    Merci pour ton aide

  14. #14
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 663
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 663
    Points : 14 651
    Points
    14 651
    Par défaut
    bonjour,
    j'ai corrigé la requête:
    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    SELECT ACTIVITE.* FROM (SELECT [Activités générales].Titre, [Activités générales].Nom, [Activités générales].Prénom, [Activités générales].[Date Naissance], [Activités générales].[Tél Privé], [Activités générales].GSM, [Activités générales].[E-mail], [Activités générales].Période, [Prof Tennis 1].[Nom Prof], [Jours 1].[Jour 1] as Jour
    FROM ([Activités générales] INNER JOIN [Prof Tennis 1] ON [Activités générales].[Prof 1] = [Prof Tennis 1].N°) INNER JOIN [Jours 1] ON [Activités générales].[Jour 1] = [Jours 1].N°
    UNION
    SELECT [Activités générales].Titre, [Activités générales].Nom, [Activités générales].Prénom, [Activités générales].[Date Naissance], [Activités générales].[Tél Privé], [Activités générales].GSM, [Activités générales].[E-mail], [Activités générales].Période, [Prof Tennis 2].[Nom Prof], [Jours 2].[Jour 2]
    FROM ([Activités générales] INNER JOIN [Prof Tennis 2] ON [Activités générales].[Prof 2] = [Prof Tennis 2].N°) INNER JOIN [Jours 2] ON [Activités générales].[Jour 2] = [Jours 2].N°)  AS ACTIVITE
    WHERE (ACTIVITE.[Nom Prof]=[Formulaires]![Encodage Ecole de tennis]![Prof 1])
    ORDER BY ACTIVITE.Nom, ACTIVITE.[Nom Prof];
    Quand on est derrière l'écran on n'a aucun clavier sous les mains ...
    ah non ? donc devant l'écran c'est la connectique ?

  15. #15
    Membre à l'essai
    Homme Profil pro
    Multimédia
    Inscrit en
    Septembre 2014
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Multimédia
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Septembre 2014
    Messages : 38
    Points : 13
    Points
    13
    Par défaut
    Bonjour tee_grandbois,

    Je ne suis pas un spécialiste du "SQL", mais bravo pour ta proposition, elle permet de filtrer les fiches sur base du nom du prof, quelque soit sa position dans un des 2 champs "Prof 1" ou "Prof 2", et sans afficher le deuxième qui n'est pas demandé.
    L'affichage de la requête est correcte, 10 colonnes, alors que en mode création je ne vois que 3 colonnes ? cela doit faire partie des mystères pour moi du SQL

    Petite parenthèse, j'ai eu un petit soucis avec l'impossibilité de sélectionner un nom de prof dans le formulaire, mais, sans doute du a une erreur de manipulation de ma part, cela était du à la clé primaire de la table "Prof tennis 1" qui était sur le champs "Nom Prof", je l'ai déplacé sur "N°" et maintenant c'est ok, la sélection est possible.

    Grâce à ta bonne proposition, j'obtiens un état basé sur le nom de Prof (j'ai modifié la condition question de la requête qui était "[Formulaires]![Encodage Ecole de tennis]![Prof 1]" en [Prof ?], cela est plus parlant pour l'utilisateur "lambda" :-) et fonctionne apparemment correctement, je suppose que cette modification n'a pas d'impact sur le fonctionnement de la requête ?)

    Il y a un point que je voudrais améliorer, c'est le classement pour le jour.
    Il se fait de manière alphabétique, mais dans le cas présent, il serait logique d'avoir le vendredi avant le samedi et le samedi avant le dimanche

    Exemple : La table "Jours 1" est ok, le classement suit bien l'encodage logique
    1 : Vide
    2 : Lundi
    3 : Mardi
    4 : Mercredi
    5 : Jeudi
    6 : Vendredi
    7 : Samedi
    8 : Dimanche

    Mais l'affichage de l'état est par ordre alphabétique pour le jour au lieu par jour de la semaine.
    J'ai cherché sans trouver...

    Comment faire cela ?

    Encore merci

  16. #16
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 663
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 663
    Points : 14 651
    Points
    14 651
    Par défaut
    bonjour,
    il faudrait rajouter le champ [Jours 1].N° dans la requête pour pouvoir trier par ce champ, le tri se devant se faire dans l'état et pas dans la requête.
    Si tu as des soucis pour l'implémenter, poste la dernière version de ta requête.
    Quand on est derrière l'écran on n'a aucun clavier sous les mains ...
    ah non ? donc devant l'écran c'est la connectique ?

  17. #17
    Membre à l'essai
    Homme Profil pro
    Multimédia
    Inscrit en
    Septembre 2014
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Multimédia
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Septembre 2014
    Messages : 38
    Points : 13
    Points
    13
    Par défaut
    Bonjour tee_grandbois,

    Voici la dernière version de la requête basée sur ton code SQL ("Liste "EdT" par prof - V1")

    TEST EdT v3 - structure seule.zip

    Merci

  18. #18
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 663
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 663
    Points : 14 651
    Points
    14 651
    Par défaut
    bonjour,
    voici la requête modifiée avec le numéro du jour ajouté (colonne NumJour). J'ai enlevé le tri dans la requête car elle n'as pas lieu d'être si le tri se fait dans l'état. Il te restera à modifier ton état pour utiliser le numéro du jour à la place du libellé:
    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    SELECT ACTIVITE.*
    FROM (SELECT [Activités générales].Titre, [Activités générales].Nom, [Activités générales].Prénom, [Activités générales].[Date Naissance], [Activités générales].[Tél Privé], [Activités générales].GSM, [Activités générales].[E-mail], [Activités générales].Période, [Prof Tennis 1].[Nom Prof], [Jours 1].[Jour 1] as Jour, [Jours 1].N° as NumJour
    FROM ([Activités générales] INNER JOIN [Prof Tennis 1] ON [Activités générales].[Prof 1] = [Prof Tennis 1].N°) INNER JOIN [Jours 1] ON [Activités générales].[Jour 1] = [Jours 1].N°
    UNION
    SELECT [Activités générales].Titre, [Activités générales].Nom, [Activités générales].Prénom, [Activités générales].[Date Naissance], [Activités générales].[Tél Privé], [Activités générales].GSM, [Activités générales].[E-mail], [Activités générales].Période, [Prof Tennis 2].[Nom Prof], [Jours 2].[Jour 2], [Jours 2].N°
    FROM ([Activités générales] INNER JOIN [Prof Tennis 2] ON [Activités générales].[Prof 2] = [Prof Tennis 2].N°) INNER JOIN [Jours 2] ON [Activités générales].[Jour 2] = [Jours 2].N°)  AS ACTIVITE
    WHERE (((ACTIVITE.[Nom Prof])=[Prof ?]))
    ;
    Quand on est derrière l'écran on n'a aucun clavier sous les mains ...
    ah non ? donc devant l'écran c'est la connectique ?

  19. #19
    Membre à l'essai
    Homme Profil pro
    Multimédia
    Inscrit en
    Septembre 2014
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Multimédia
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Septembre 2014
    Messages : 38
    Points : 13
    Points
    13
    Par défaut
    Bonjour tee_grandbois,

    J'ai copié ton code pour la requête, il fonctionne.
    Effectivement la colonne NumJour permet d'obtenir le classement souhaité

    J'ai modifié le tri dans l'état et maintenant le classement est correct

    Nom : Etat EdT 1.JPG
Affichages : 840
Taille : 87,8 Ko

    Merci tee_grandbois

    Je soumettrai le résultat à la secrétaire pour validation de la solution à la demande

  20. #20
    Membre à l'essai
    Homme Profil pro
    Multimédia
    Inscrit en
    Septembre 2014
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Multimédia
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Septembre 2014
    Messages : 38
    Points : 13
    Points
    13
    Par défaut
    Bonjour,

    Voilà c'est bon
    Mais on m'a fait remarquer qu'il manquait le choix de la période (saison) pour l'état.
    Effectivement je n'avais pas pensé à ce détail, voilà qui est corrigé :

    Nom : Req EdT 7.JPG
Affichages : 838
Taille : 16,9 Ko

    Je suis maintenant devant un autre défi pour une autre requête, j'ouvre un nouveau sujet

    Encore merci pour l'aide

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. Requête avec ET sur 1 champs
    Par papaoursold dans le forum Requêtes et SQL.
    Réponses: 11
    Dernier message: 22/05/2013, 18h34
  2. [AC-2007] Requête avec filtre sur caractère #
    Par damsmut dans le forum Requêtes et SQL.
    Réponses: 8
    Dernier message: 24/11/2009, 13h21
  3. [AC-2002] Requête avec IIf et Dlast, champ sur une deuxième table
    Par mbuddy dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 03/06/2009, 04h33
  4. [MySQL] Requête avec condition sur un champ
    Par nonhosonno dans le forum Langage SQL
    Réponses: 2
    Dernier message: 26/02/2007, 14h00
  5. Requete avec filtre sur un champ
    Par podz dans le forum Langage SQL
    Réponses: 7
    Dernier message: 09/02/2005, 14h37

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo