et join [MySQL] - SQL/NoSQL - Programmation
Marsh Posté le 17-09-2004 à 10:40:26
ratibus a écrit : Tu veux dire que pour un enregistrement de la table news, le champ cat contient plusieurs valeurs ? |
on dirait bien...c'est ce que j'appelle une mauvaise modélisation...
Marsh Posté le 17-09-2004 à 10:43:54
Voici a quoi ressemble cat_name :
Code :
|
Et voici a quoi ressemble la cellule ou se trouvent les valeurs séparées par des virgules :
Code :
|
les valeurs séparées par des virgules sont en fait les id de la table cat_name tout au-dessus mais je vois pas comment les joindre
Marsh Posté le 17-09-2004 à 10:48:35
be_pipo a écrit : |
Pour être logique, tu devrais avoir 3 tables : cat_name, news, et une news_est_dans_cat contenant cat_id et news_id.
Marsh Posté le 17-09-2004 à 10:55:00
skeye a écrit : Pour être logique, tu devrais avoir 3 tables : cat_name, news, et une news_est_dans_cat contenant cat_id et news_id. |
Ben wi mais la db va être conséquente et les news peuvent se trouver dans beaucoup de catégories. Je trouvais ça con de rajouter une table avec
id news - id catégorie
1 - 2
1 - 8
1 - 3
1 - 28
1 - 25
Donc j'ai tout rassemblé dans une seule table. Les recherches ne se font de tout façon que sur une seule catégorie a la fois donc c'est assez rapide (j'ai testé avec un million de news).
La jointure dont je parle ici est uniquement utilisée en moderation donc presque jamais apellée c'est juste pour pouvoir ajouter/enlever des catégories
Marsh Posté le 17-09-2004 à 10:59:20
Citation : Je trouvais ça con de rajouter une table avec |
Et pourtant c'est la seule bonne maniere de faire.
Marsh Posté le 17-09-2004 à 11:00:46
Sebastien a écrit :
|
Aller se faire chier à exploser une chaine à chaque select sur la table, c'est franchement n'importe-quoi...
Marsh Posté le 17-09-2004 à 11:01:41
Sebastien a écrit :
|
Mairde j'avais fait comme ça au départ en plus
On m'aurait menti
Enfin je voyais pas de différence de vitesse en select simple en tout cas
Marsh Posté le 17-09-2004 à 11:03:48
Bon bah en même temps le reste est fait normallement et j'ai encore ma première table donc ça va aller vite
mecrhiii tout le monde
Marsh Posté le 17-09-2004 à 10:28:50
Hello,
J'ai un petit problème pour joindre une table (qui se nomme 'cat_name' ) de type :
id - nom
et une table (qui se nome news mais la cellule qui m'interresse s'apelle 'cat' ) dans laquelle il y a des chiffres séparés par des virgules :
2, 24, 1, 7
Ces chiffres correspondent aux id's de la table "cat_name".
J'ai cherché dans la doc MySQL et sur mais pas moyen de trouver