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

Langage SQL Discussion :

trier une table en fonction d'une autre


Sujet :

Langage SQL

  1. #1
    Membre actif
    Inscrit en
    Juin 2006
    Messages
    431
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 431
    Points : 209
    Points
    209
    Par défaut trier une table en fonction d'une autre
    bon le titre est pas trés clair mais en gros j'ai 2 tables avec deux champs de contenu identiques, mais de noms différents. Je voudrais trier la première table, faire le lien sur les colonnes identiques pour ressortir les données associées sur la 2e table.
    Je pensais faire quelque chose du style:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT a.* FROM t_dns a, tsyn_mails b where b.Syn_MailDom in (SELECT Syn_MailDom FROM tsyn_mails  WHERE Syn_MailQuotas = 'noquota') and a.dnsdesignation = b.Syn_MailDom;
    Mais il ne fait pas le tri sur noquota. Comment puis-je contourner le problème?

  2. #2
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 080
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 9 080
    Points : 30 802
    Points
    30 802
    Par défaut
    Ta requête revient à ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    SELECT  a.* 
    FROM    t_dns a
        INNER JOIN
            tsyn_mails b
            ON  a.dnsdesignation = b.Syn_MailDom       
    WHERE   b.Syn_MailQuotas = 'noquota' 
    ;
    Citation Envoyé par boss_gama
    Mais il ne fait pas le tri sur noquota.
    Qu'est-ce que noquota ? Une colonne de t_dns ou de tsyn_mails ?
    Il suffit d'ajouter la clause ORDER BY noquota à la fin de la requête.
    Modérateur Langage SQL
    Règles du forum Langage SQL à lire par tous, N'hésitez pas à consulter les cours SQL
    N'oubliez pas le bouton et pensez aux balises
    [code]
    Si une réponse vous a aidé à résoudre votre problème, n'oubliez pas de voter pour elle en cliquant sur
    Aide-toi et le forum t'aidera : Un problème exposé sans mentionner les tentatives de résolution infructueuses peut laisser supposer que le posteur attend qu'on fasse son travail à sa place... et ne donne pas envie d'y répondre.

  3. #3
    Membre actif
    Inscrit en
    Juin 2006
    Messages
    431
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 431
    Points : 209
    Points
    209
    Par défaut
    dsl pour le retard, noquota est une valeur de ma colonne Syn_MailDom, une colonne de tsyn_mails. J'ai testé ta requete et elle me donne un nombre de resultats inferieur a la requete qui teste la valeur de Syn_MailDom. Je vais chercher un peu pour voir d'ou ca peut venir, et si je ne trouve rien je reviens ici

  4. #4
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 080
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 9 080
    Points : 30 802
    Points
    30 802
    Par défaut
    Citation Envoyé par boss_gama
    noquota est une valeur de ma colonne Syn_MailDom, une colonne de tsyn_mails.
    Citation Envoyé par boss_gama
    Mais il ne fait pas le tri sur noquota.
    Comment veux-tu faire un tri sur une valeur ?
    Modérateur Langage SQL
    Règles du forum Langage SQL à lire par tous, N'hésitez pas à consulter les cours SQL
    N'oubliez pas le bouton et pensez aux balises
    [code]
    Si une réponse vous a aidé à résoudre votre problème, n'oubliez pas de voter pour elle en cliquant sur
    Aide-toi et le forum t'aidera : Un problème exposé sans mentionner les tentatives de résolution infructueuses peut laisser supposer que le posteur attend qu'on fasse son travail à sa place... et ne donne pas envie d'y répondre.

  5. #5
    Membre actif
    Inscrit en
    Juin 2006
    Messages
    431
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 431
    Points : 209
    Points
    209
    Par défaut
    je fais une comparaison. Je cherche à remonter toutes les lignes où Syn_MailDom = 'noquota'. Mais ca je le fais pour l'instant avec :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT * FROM tsyn_mails t WHERE Syn_MailQuotas = 'noquota';
    ce qui marche trés bien. Le problème se présente quand je veux sélectionner les clients associés à ces mails (je gère la taille de boite mails). il faut alors que je récupères tous les noms des clients qui 'nont pas de quotas sur leurs boite mails.

  6. #6
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 080
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 9 080
    Points : 30 802
    Points
    30 802
    Par défaut
    Citation Envoyé par boss_gama
    je fais une comparaison. Je cherche à remonter toutes les lignes où Syn_MailDom = 'noquota'. Mais ca je le fais pour l'instant avec :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT * FROM tsyn_mails t WHERE Syn_MailQuotas = 'noquota';
    ce qui marche trés bien. Le problème se présente quand je veux sélectionner les clients associés à ces mails (je gère la taille de boite mails). il faut alors que je récupères tous les noms des clients qui 'nont pas de quotas sur leurs boite mails.
    Je pense comprendre que par tri tu veux signifier filtre ou sélection.
    Une opération de tri a pour but d'ordonner les résultats...
    Modérateur Langage SQL
    Règles du forum Langage SQL à lire par tous, N'hésitez pas à consulter les cours SQL
    N'oubliez pas le bouton et pensez aux balises
    [code]
    Si une réponse vous a aidé à résoudre votre problème, n'oubliez pas de voter pour elle en cliquant sur
    Aide-toi et le forum t'aidera : Un problème exposé sans mentionner les tentatives de résolution infructueuses peut laisser supposer que le posteur attend qu'on fasse son travail à sa place... et ne donne pas envie d'y répondre.

  7. #7
    Membre actif
    Inscrit en
    Juin 2006
    Messages
    431
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 431
    Points : 209
    Points
    209
    Par défaut
    vu sous cet angle... Par contre finalment ta requete marche, c'est ma table qui possède des entrées incorrectes, d'où la différence entre les résultats que j'observais. Le problème est réglé et tout fonctionne maintenant. Je te remercie pour tout.

  8. #8
    Nouveau Candidat au Club
    Inscrit en
    Octobre 2009
    Messages
    1
    Détails du profil
    Informations forums :
    Inscription : Octobre 2009
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Merci...
    Ca fait quelques temps que je cherche une query similaire (je suis débutant en sql)...

    Donc juste MERCI... ;-)

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 6
    Dernier message: 17/03/2015, 23h16
  2. [MySQL] mysql requete d'une table en fonction d'une autre
    Par mickeymic dans le forum PHP & Base de données
    Réponses: 10
    Dernier message: 28/04/2014, 09h45
  3. Alimenter une table en fonction d'une autre ?
    Par jujurochedu42 dans le forum jQuery
    Réponses: 1
    Dernier message: 07/01/2013, 12h42
  4. Mise à jour d'une table en fonction d'une autre
    Par lucy101 dans le forum Langage SQL
    Réponses: 3
    Dernier message: 10/05/2010, 14h24
  5. Afficher une table en fonction d'une autre
    Par buzz68180 dans le forum WinDev
    Réponses: 7
    Dernier message: 25/05/2009, 11h21

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