이 SQL 쿼리의 목표는 가장 많은 승리를 얻은 사용자와 승리 한 횟수를 반환하는 것입니다.이 논리에 대한 SQL 쿼리를 작성하는 방법 (has_many, belongs_to association)?
나는 두 개의 테이블을 가지고 있습니다 : 사용자와 경기. (FK USER_ID)
- challenger_id (FK user_id를)
- challengee_id
- challenger_won (부울 :
사용자가 많은 싸움이 사용자에게 속한 싸움을
싸움 우려의 다음과 같은 열이있다)
사용자가 볼 수있는 것처럼 도전자 또는 도전자, 그러나 둘 다 아닙니다.
- 사용자가 도전자이고 challenger_won = true이면 승리로 간주됩니다.
- 사용자가 challengee이고 challenger_won = false 인 경우, 이는 승리로 간주됩니다.
- challenger_won = null 인 경우 무시하십시오.
어떻게이 SQL을 작성할 수 있습니까?
첫 번째 쿼리를 실행할 때 "모든 파생 테이블에 고유 한 별칭이 있어야합니다"라는 오류가 발생합니다. – keruilin
@keruilin : 유죄로 청구 됨 - 누락 된 'AS a'절을 추가했습니다 (' AS b '대신 알 수없는 테이블/별칭'a '오류가 발생합니다. 코드를 실행하지 않았습니다. 알 수 있듯이. –