J'ai deux tables comme les suivantesMySQL - Comment joindre deux tables sans doublons?
hotels
------
hotelID
hotelName
Deuxième table
operators
---------
opID
opName
opServices
opHotelID
une brève explication: Dans le premier tableau que j'ai beaucoup d'hôtels qui ont un identifiant d'incrément qui est unique. La deuxième table contient tous les opérateurs offrant cet hôtel avec des services supplémentaires. L'opID est ici aussi unique mais l'opHotelID existe plusieurs fois, car il peut y avoir plusieurs opérateurs offrant l'hôtel.
Maintenant, ce que je veux est la suivante:
Je veux obtenir le hotelName et une colonne supplémentaire (appelées Opérateurs) qui répertorie tous les opérateurs qui offrent l'hôtel.
Ainsi, le résultat devrait être comme ça ...
123 - Hotel ABC - OP1,Op2,OP3
au lieu de cela ...
123 - Hotel ABC - OP1
123 - HOtel ABC - OP2
123 - Hotel ABC - OP3
Est-il possible de le faire dans une requête SQL ou comment voulez-vous résoudre ce problème? Je travaille actuellement sur une fonction de recherche et actuellement j'ai une simple requête SELECT avec une jointure à gauche mais cela retourne beaucoup plus de lignes. Maintenant, la recherche ne devrait afficher que des identifiants d'hôtel uniques et combiner les différents opérateurs dans une seule colonne.
Merci pour vous aider et avoir une belle journée ...
Bye WorldSignia
Merci. Cela fonctionne maintenant :) –
Pouvez-vous peut-être aussi me dire comment je peux compter les rangées?Surtout quand j'ajoute une LIMITE à la requête. Comment puis-je obtenir les lignes max que cette requête produit? Un simple COUNT ne fonctionne pas. –
J'ai édité ma réponse pour l'option count. Vous devez remplacer la jointure interne par une jointure à gauche afin qu'elle prenne les hôtels sans opérateur. – Arkh