Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Wewnętrzne połączenie 2 tabel z tymi samymi nazwami kolumn

powodem, dla którego nie działa, jest to, że (moim zdaniem ) serwer jest trochę zdezorientowany, w jaki sposób poprawnie obsłuży nazwy kolumn. Aby to zadziałało, dodaj alias do każdej tabeli o tej samej nazwie, do której chcesz dołączyć, a także do kolumn, np.

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

zakładając, że chcesz uzyskać nazwy poszczególnych kolumn .



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Kolumna nie może mieć wartości null Mysql

  2. Analizator zapytań MySql - darmowe rozwiązania

  3. Wykonaj skrypt/polecenie powłoki z poziomu wyzwalacza/procedury przechowywanej MySQL

  4. jak zapobiec temu błędowi :Ostrzeżenie:mysql_fetch_assoc() oczekuje, że parametr 1 będzie zasobem, wartość logiczna podana w ... w linii 11.

  5. PDO pobiera jedną kolumnę z tabeli do 1-wymiarowej tablicy