sql >> Database >  >> RDS >> Mysql

Inner join 2 tabellen met dezelfde kolomnamen

de reden waarom het niet werkt is omdat (naar mijn mening ) de server is een beetje in de war over hoe het de kolomnamen correct zal verwerken. Om het te laten werken, voegt u een alias toe aan elke tabel met dezelfde naam waaraan u wilt deelnemen, evenals aan de kolommen, bijvoorbeeld

SELECT  achievements.*,
        a.Name as TypeName,
        b.Name AS BlockName,
        c.Name as DataName,
        d.Name AS ValueName
FROM    achievements
        INNER JOIN stats a ON achievements.type = a.type
        INNER JOIN stats b ON achievements.block = b.block
        INNER JOIN stats c ON achievements.data = c.data
        INNER JOIN stats d ON achievements.value = d.value
WHERE   player_id = $id

ervan uitgaande dat u de namen voor elke specifieke kolom wilt krijgen .



  1. Een mogelijke verbetering voor statistische updates:MAXDOP

  2. Zoeken in een kolom met CSV-gegevens in een MySQL-tabel op het bestaan ​​van invoerwaarden

  3. Communicatieverbindingsfout, Spring Boot + MySql + Docker + Hibernate

  4. Hoe elke rij te selecteren waar de kolomwaarde NIET verschillend is