2014-02-15 3 views
0

2 테이블, 선수 및 금지가 있습니다.다른 기준으로 한 열에서 2 개의 값을 가져 옵니까?

players = id, name 

bans = id, type, banned_id, accuser_id 

한 행에 금지 된 플레이어 이름과 비난하는 플레이어 이름을 모두 선택하려면 어떻게합니까? 여기 내 잘못된 코드 : 당신이 차단 된 사용자에 대한 데이터를 얻고 싶다면

SELECT `bans`.`id`, `players`.`name` AS `banned`, `players`.`name` AS `accuser` 
FROM `bans`, `players` 
WHERE `bans`.`type` = 2; 

답변

0

SELECT b.id, p.name as accuser FROM bans b JOIN players p ON p.id=b.accuser_id WHERE b.type=2 

당신이 금지에 대한 정보를 모든 사용자에 대한 데이터를 얻고 싶다면

SELECT * FROM players p LEFT JOIN bans b ON b.accuser_id = p.id 
관련 문제