Disons que j'ai une liste tableau marques ou modèles de véhicules:Joindre deux tables (à travers un lien), un qui peut produire plusieurs lignes, en un seul résultat
Voitures:
Id | Brand
-----------
1 | BMW
2 | Audi
3 | Volvo
Et j'ai aussi une autre table qui relie les fonctionnalités.
Lien:
Id | carid | featureid
-----------------------
1 | 1 | 1
2 | 1 | 2
3 | 2 | 2
4 | 3 | 1
5 | 3 | 2
6 | 3 | 3
J'ai la table la liste des caractéristiques.
Caractéristiques:
Id | Feature
-----------
1 | A/C
2 | 4WD
3 | Heated seats
Je veux énumérer ces résultats sur ma page d'accueil comme celui-ci:
BMW
- A/C
- 4 roues motrices
Audi
- 4WD
Volvo
- A/C
- 4WD
- sièges chauffants
Quelle est la meilleure façon de faire cela (en utilisant PHP et MySQL)?
Modifier: Je pense que je vais revoir ma base de données Cars
pour ressembler à ceci:
Id | Brand | Feature
----------------------
1 | BMW | 1,2
2 | Audi | 1
3 | Volvo | 1,2,3
4 | Citröen |
Et puis chercher Features
avance et combiner en PHP. Je suppose que c'est beaucoup plus facile, et je n'ai pas de problème si j'ai une marque sans fonctionnalité.
Mais cela ne me donner le premier long métrage, et pas tous puisque nous groupant, non? Donc je dois 'GROUP BY features' et ensuite avec PHP parcourir les résultats pour obtenir chacun des résultats avant de passer à la marque suivante ou quelque chose? Une idée sur la façon de rendre cela plus simple? – Eikern
oh à droite, je suis désolé, utilisez ordre au lieu de groupe par et que de passer à travers le résultat en utilisant un cicle ... J'ai mis à jour le poste, lisez maintenant ... – Marcx