sql >> Databáze >  >> RDS >> Mysql

MySQL - Jak spojit dvě tabulky bez duplikátů?

Zkuste toto:

SELECT hotels.hotelID, 
hotels.hotelName,
GROUP_CONCAT(operators.opName SEPARATOR ', ') AS opList
FROM hotels
INNER JOIN operators 
ON operators.opHotelID = hotels.hotelID
GROUP BY(hotels.hotelID)

Pokud chcete mít počet operátorů, musíte použít COUNT na ID operátorů, jako je toto:

SELECT hotels.hotelID, 
hotels.hotelName,
GROUP_CONCAT(operators.opName SEPARATOR ', ') AS opList,
COUNT(operators.opID) AS nbOperatos
FROM hotels
LEFT JOIN operators 
ON operators.opHotelID = hotels.hotelID
GROUP BY(hotels.hotelID)


  1. Naformátujte MySQL pomocí CONCAT

  2. PHP, MYSQL vnořené dotazy

  3. Oprava „CHYBA:každý dotaz INTERSECT musí mít stejný počet sloupců“ v PostgreSQL

  4. Vyberte informace z poslední položky a připojte se k celkové částce