Mysql
 sql >> база данни >  >> RDS >> Mysql

mysql таблица за присъединяване

Опитайте тази заявка, но ако имаше някакви данни, щях да мога да проверя, въпреки че проверих с фиктивни данни

select
  t.token_id,
  IFNULL(g.game,'') as Game,
  IFNULL(p.name,'') as Prize,
  case when g.game != '' then 'Assigned' when p.name != '' then 'Assigned' else 'Not assigned yet' end as `Status`
from token as t
  left join (select *
         from games
         where token_id not in(select
                     token_id
                   from prize)) as g
    on g.token_id = t.token_id
  left join (select *
         from prize
         where token_id not in(select
                     token_id
                   from games)) as p
    on p.token_id = t.token_id

РЕДАКТИРАНО
Тогава би трябвало да е най-лесното нещо

select *
from `user`
  left join token
    on user.user_id = token.user_id
  left join games
    on games.token_id = token.token_id
  left join prize
    on prize.token_id = token.token_id
where user.user_id = 1



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Mysql пускане на потребител с разрешения за множество хостове

  2. Как мога да защитя MySQL потребителско име и парола от декомпилиране?

  3. Как да направите резервно копие на MySQL Database и да го поставите в Amazon s3 всяка вечер, като използвате раздела Cron?

  4. Производителност на MySQL на уникално поле varchar срещу уникален bigint

  5. Няма ли опция за картографиране на името на колоната в модела на секвелизиране