Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1728 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  [PHP/MySQL] coup de main pour une requêtes SQL

 



 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[PHP/MySQL] coup de main pour une requêtes SQL

n°2106705
darxmurf
meow
Posté le 17-10-2011 à 13:47:48  profilanswer
 

Hello,
 
Je tourne en rond pour une requêtes MySQL... si vous avez une idée je suis preneur :jap:
 
.::TABLE 1 - types de projets
Structure : [ id (int) |  type (varchar) ]
contenu :
1  |  Logos
2  |  Design web
3  |  Packaging
4  |  Photos
 
.::TABLE 2 - Project
Structure : [ id (int) |  type_id (varchar) |  client  (varchar)  |  description (varchar) ]
contenu :  
1  |  3  |  Francis  |  "blablabla"
2  |  1,2  |  Jean-Paul  |  "logo et site web"
3  |  1,2,4  |  Arthur  |  "Gros boulot"
4  |  4  |  Moi  |  shooting
 
Dans la table 2 on trouve les projets effectués par un graphiste par exemple et le champ "type_id" est une référence à la table 1.
 
Seulement voilà j'aimerais faire une requête qui m'affiche ça
 
Packaging  |  Francis  |  "blablabla"
Logo  |  Jean-Paul  |  "logo et site web"
Design Web  |  Jean-Paul  |  "logo et site web"
Logo |  Arthur  |  "Gros boulot"
Design web |  Arthur  |  "Gros boulot"
Photos |  Arthur  |  "Gros boulot"
Photos  |  Moi  |  shooting
 
En gros un join qui me fait une ligne par type_id de la table 2 avec le reste des infos relatives à côté.
J'arrive a faire un JOIN sans problème mais ça n'affiche qu'une seule ligne par projet et du coup qu'un seul type_id
 
C'est y clair que que j'essaie de faire ? [:tinostar]


---------------
Des trucs - flickr
mood
Publicité
Posté le 17-10-2011 à 13:47:48  profilanswer
 

n°2106710
philippe06
Posté le 17-10-2011 à 14:02:35  profilanswer
 

type_id est un int dans un 1 cas et un varchar dans une autre, c'est impossible de faire une jointure comme ça en SQL.
 
Tu peux toujours bricoler autour avec un langage type PHP, ce que je ne recommande pas. La façon propre de travailler est de faire une 3 ème table projet_type_projet qui permette d'avoir des champs "atomiques" partout.
 
D'après mon expérience, si tu as un champ non "atomique" en SQL, c'est que tu as fait une erreur de conception.
 
Par atomique j'en tends 1 unique valeur par champs. L'opposé est une "collection".


---------------
Aimer les femmes intelligentes est un plaisir de pédéraste. (Charles Baudelaire) - Vous vulgarisez :o (Jean-Kevin Dubois)
n°2106714
darxmurf
meow
Posté le 17-10-2011 à 14:08:11  profilanswer
 

philippe06 a écrit :

type_id est un int dans un 1 cas et un varchar dans une autre, c'est impossible de faire une jointure comme ça en SQL.

 

Tu peux toujours bricoler autour avec un langage type PHP, ce que je ne recommande pas. La façon propre de travailler est de faire une 3 ème table projet_type_projet qui permette d'avoir des champs "atomiques" partout.

 

D'après mon expérience, si tu as un champ non "atomique" en SQL, c'est que tu as fait une erreur de conception.

 

Par atomique j'en tends 1 unique valeur par champs. L'opposé est une "collection".

 

ouaip je suis en train de me dire que j'ai merdé sur ce coup là.
Je vais faire une table projects-to-type_id pour lier ça

 

EDIT 3 : merci :jap:


Message édité par darxmurf le 17-10-2011 à 14:10:56

---------------
Des trucs - flickr

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  [PHP/MySQL] coup de main pour une requêtes SQL

 

Sujets relatifs
Problème d'encodage PDO/Mysql/PHP[PHP/MYSQL]Commands out of Sync
Problème avec formulaire en PHP[PHP/MYSQL] comment connaitre la valeur d'un id autoincrement
[PHP/MYSQL]Requêtes multiples 
Plus de sujets relatifs à : [PHP/MySQL] coup de main pour une requêtes SQL


Copyright © 1997-2018 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR