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

PHP - problemy z kojarzeniem wyników i pobieraniem ich w MYSQL

Jeśli dobrze rozumiem Twój UUID kolumna jest unikalnym identyfikatorem (key ) dla gracza, dlatego wartości z obu tabel powinny zostać połączone w tej kolumnie w przypadku, gdy dwie kolumny są równe .

Biorąc pod uwagę to zrozumienie, zapytanie nie ma sensu, ponieważ używasz >= do porównania, wybierając żądane rekordy, ale także rekordy, których nie chcesz. Powinno być:

SELECT player_data.uuid, banned_players.uuid 
FROM  player_data, banned_players 
WHERE player_data.uuid = banned_players.uuid
AND player_data.username = :username 

Co można również wyrazić bardziej wyraźnie jako:

SELECT player_data.uuid, banned_players.uuid 
FROM  player_data 
JOIN banned_players ON (player_data.uuid = banned_players.uuid)
WHERE player_data.username = :username 



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak przyciąć pierwsze trzy znaki na podstawie pierwszej litery (wyrażenia) przed wstawieniem do bazy danych

  2. Uporządkuj według aliasu w mysql zawartym w if query

  3. Skonstruuj zapytanie, aby utworzyć tabele

  4. SET zmienną w instrukcji SELECT - MySQL

  5. Zalecenia dotyczące dostrajania wydajności MySQL my.cnf