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 :

Jointure sans résultat sur mutualisé


Sujet :

Requêtes MySQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Webmaster
    Inscrit en
    Avril 2009
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Avril 2009
    Messages : 29
    Par défaut Jointure sans résultat sur mutualisé
    Bonjour a tous,

    J'ai la requête suivante qui fonctionne sans broncher sur mon local mais qui me retourne NULL dans la colonne Designation chez mon hébergeur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    SELECT  s.reference, p.designation  
    FROM stock s
    LEFT JOIN produit p ON p.id LIKE s.reference 
    WHERE s.reference = "001225"
    AND s.entrepot = "2"
    LIMIT 0,30
    Le serveur Mutualisé :
    Généré par: phpMyAdmin 3.3.10 / MySQL 5.1.41-3ubuntu12.10
    Mon local :
    Généré par: phpMyAdmin 3.3.9 / MySQL 5.5.8-log
    Merci par avance pour vos précieuses lumières

  2. #2
    ced
    ced est déconnecté
    Rédacteur/Modérateur

    Avatar de ced
    Homme Profil pro
    Gestion de bases de données techniques
    Inscrit en
    Avril 2002
    Messages
    6 059
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Gestion de bases de données techniques
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Avril 2002
    Messages : 6 059
    Par défaut
    Bonjour,

    On peut voir la structure des tables sur chaque serveur, et notamment le type des colonnes en question ?
    En faisant, par exemple, un SHOW CREATE TABLE nomtable;.
    Rédacteur / Modérateur SGBD et R
    Mes tutoriels et la FAQ MySQL

    ----------------------------------------------------
    Pensez aux balises code et au tag
    Une réponse vous a plu ? N'hésitez pas à y mettre un
    Je ne réponds pas aux questions techniques par message privé, les forums sont là pour ça

  3. #3
    Membre averti
    Homme Profil pro
    Webmaster
    Inscrit en
    Avril 2009
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Avril 2009
    Messages : 29
    Par défaut
    Merci de ta réponse CED et oui bien sur avec plaisir :


    Pour la table STOCK :

    Réponse du serveur mutualisé :
    CREATE TABLE `stock` (
    `id` int(11) NOT NULL AUTO_INCREMENT,
    `reference` text,
    `entrepot` int(1) DEFAULT NULL,
    PRIMARY KEY (`id`)
    ) ENGINE=MyISAM AUTO_INCREMENT=2145 DEFAULT CHARSET=utf8
    Mon local :
    CREATE TABLE `stock` (
    `id` int(11) NOT NULL AUTO_INCREMENT,
    `reference` text,
    `entrepot` int(1) DEFAULT NULL,
    PRIMARY KEY (`id`)
    ) ENGINE=MyISAM AUTO_INCREMENT=2109 DEFAULT CHARSET=utf8

    Pour la table PRODUITS :


    Réponse du serveur mutualisé :
    CREATE TABLE `produit` (
    `id` varchar(15) COLLATE latin1_general_ci NOT NULL,
    `designation` text COLLATE latin1_general_ci NOT NULL,
    `tarif_base_HT` float NOT NULL,
    PRIMARY KEY (`id`),
    FULLTEXT KEY `designation` (`designation`)
    ) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci
    Mon local :
    CREATE TABLE `produit` (
    `id` varchar(15) COLLATE latin1_general_ci NOT NULL,
    `designation` text COLLATE latin1_general_ci NOT NULL,
    `tarif_base_HT` float NOT NULL,
    PRIMARY KEY (`id`),
    FULLTEXT KEY `designation` (`designation`)
    ) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci
    Voila après nettoyage du superflu ce qui m'est retourné. Je pense qu'il y a un pb de compatibilité mais ce n'est que mon humble avis.

  4. #4
    ced
    ced est déconnecté
    Rédacteur/Modérateur

    Avatar de ced
    Homme Profil pro
    Gestion de bases de données techniques
    Inscrit en
    Avril 2002
    Messages
    6 059
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Gestion de bases de données techniques
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Avril 2002
    Messages : 6 059
    Par défaut
    C'est curieux , d'autant plus que la colonne designation est NOT NULL.
    Dans la requête, commence par remplacer les guillemets par des simples quotes (').
    Mais je doute que ça résolve le problème...
    Rédacteur / Modérateur SGBD et R
    Mes tutoriels et la FAQ MySQL

    ----------------------------------------------------
    Pensez aux balises code et au tag
    Une réponse vous a plu ? N'hésitez pas à y mettre un
    Je ne réponds pas aux questions techniques par message privé, les forums sont là pour ça

  5. #5
    Membre Expert Avatar de Yanika_bzh
    Homme Profil pro
    Responsable Applicatif et R&D
    Inscrit en
    Février 2006
    Messages
    1 144
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Responsable Applicatif et R&D
    Secteur : Finance

    Informations forums :
    Inscription : Février 2006
    Messages : 1 144
    Par défaut
    Peut etre parce que

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    LEFT JOIN produit p ON p.id LIKE s.reference
    n'est pas VRAI, d'ou la récupération d'une valeur nulle.
    Verifier qu'il existe bien un produit en stock avec la référence demandée en table, ou alors probleme de collation.

    Une condition de jointure avec un like, sur 2 colonnes de type différent avec des collations differentes, vous cherchez les ennuis !!

Discussions similaires

  1. jointure avec résultat sur 3 colonnes
    Par snorky94 dans le forum Requêtes
    Réponses: 22
    Dernier message: 19/10/2012, 09h14
  2. tmap filtre sur jointure sans sortie
    Par Syphys dans le forum Développement de jobs
    Réponses: 1
    Dernier message: 21/09/2010, 14h43
  3. Réponses: 1
    Dernier message: 03/10/2008, 13h29
  4. Afficher un résultat sans appuyer sur la touche (Variable Php -> HTML -> Javascript)
    Par nafix dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 17/01/2008, 21h34
  5. retourner zero sur une requète sans résultat
    Par kelek33 dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 04/10/2007, 16h27

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