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 MySQL Discussion :

if then else et plusieurs tables


Sujet :

Requêtes MySQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre Expert
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 493
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 493
    Billets dans le blog
    1
    Par défaut if then else et plusieurs tables
    Bonjour,

    j'ai 2 tables T1 et T2 et je voudrais extraire les données d'une colonne de T1 seulement si la donnée correspondante de T2 vérifie une certaine condition (les 2 tables sont reliées par clé étrangère). Mes essais provoquent plein de messages d'erreur donc je suis loin du compte.

    Voici quelques détails :

    table "tickets" :
    tickets.sql :
    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
    CREATE TABLE IF NOT EXISTS `tickets` (
      `id` varchar(18) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL,
      `Product_Name` varchar(25) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL,
      `Assigned_Group` varchar(30) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL,
      `Submitted_Date` datetime NOT NULL,
      `Last_Resolved_Date` datetime NOT NULL,
      `Prioritytype` smallint(2) NOT NULL,
      `Statustype` smallint(3) NOT NULL,
      `Area` varchar(10) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL,
      `Country` varchar(10) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL,
      `Submitter_SESA` int(6) NOT NULL,
      `Custommer_SESA` int(6) NOT NULL,
      `Organization` varchar(20) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL,
      `Incident_Type` varchar(20) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL,
      `Reported_Source` varchar(20) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL,
      PRIMARY KEY (`id`),
      KEY `Prioritytype` (`Prioritytype`),
      KEY `Statustype` (`Statustype`)
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;

    table "statustype" :
    statustype.sql :
    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    CREATE TABLE IF NOT EXISTS `statustype` (
      `id` smallint(3) NOT NULL AUTO_INCREMENT,
      `name` varchar(13) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT '',
      PRIMARY KEY (`id`),
      UNIQUE KEY `name` (`name`)
    ) ENGINE=InnoDB AUTO_INCREMENT=31 DEFAULT CHARSET=utf8 COLLATE=utf8_bin;

    et ce que je voudrais faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    IF ((statustype.id != 4)AND(statustype.id)!=5)) THEN
    {
    SELECT tickets.Last_Resolved_Date FROM tickets
    ELSE SELECT NULL //dans ce cas, la valeur n'a aucun sens donc on affiche 0
    }
    sauf que je n'ai aucune idée de la requête qu''il faudrait faire...

  2. #2
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 136
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    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 136
    Par défaut
    Ce qui serait intéressant, ce serait de connaître les requêtes testées et les messages d'erreur reçus...
    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 Expert
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 493
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 493
    Billets dans le blog
    1
    Par défaut
    en fait, je n'ai rien gardé en mémoire. J'y retravaille donc dans la soirée puis en rendrai compte...

  4. #4
    Expert confirmé
    Avatar de rawsrc
    Homme Profil pro
    Dev indep
    Inscrit en
    Mars 2004
    Messages
    6 142
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Dev indep

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 142
    Billets dans le blog
    12
    Par défaut
    et tu continues avec latin1 !!
    tu le fais exprès ou quoi ?

  5. #5
    Membre Expert
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 493
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 493
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par rawsrc Voir le message
    tu le fais exprès ou quoi ?
    Ben oui
    Honnêtement, je croyais l'avoir corrigé, mais par exemple, pour tickets.sql, y a que la ligne 19 de corrigée, mais pas toutes celles relatives au colonnes. Je ne vois que le moyen de le changer colonne par colonne. Peut-on le faire directement ?

  6. #6
    Membre Expert
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 493
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 493
    Billets dans le blog
    1
    Par défaut
    J'ai tenté une requête simplifiée par rapport à mon but, mais déjà une erreur :

    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    IF NOT(statustype.id=4)
    select DATE_FORMAT(Last_Resolved_Date,"%Y/%m") from tickets 
    END IF

    1.Type d'énoncé non reconnu. (near "IF" at position 0)

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

Discussions similaires

  1. Problème avec plusieurs if then else imbriqués
    Par Beauserge dans le forum Langage
    Réponses: 13
    Dernier message: 16/05/2017, 19h36
  2. Requête complexe sur plusieurs table
    Par DenPro dans le forum Langage SQL
    Réponses: 13
    Dernier message: 25/11/2003, 17h50
  3. A propos d'une requête SQL sur plusieurs tables...
    Par ylebihan dans le forum Langage SQL
    Réponses: 2
    Dernier message: 14/09/2003, 16h26
  4. Une seule table VS plusieurs tables
    Par LostControl dans le forum Requêtes
    Réponses: 1
    Dernier message: 11/08/2003, 10h56
  5. [SQL] Sélection ds plusieurs table
    Par lord_paco dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 24/07/2003, 17h53

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