내 DB 클래스에 대한 2 개의 쿼리에 문제가 있습니다.조건과 재귀가있는 SQL UNION
나는이 열이 하나의 테이블 "고객"이 : 다니엘가 그들로부터 모든 클라이언트 추천 및 추천을 표시 한 사람의 ID와 잭
1)에 의해 대해 참조 것을
name | id | date | points | REFERRAL
---------------------------------------------
daniel | 123456 | 01-01-01 | 50 | 321321
jack | 321321 | 01-01-01 | 30 | 555555
주 세 번째 기준 레벨
먼저 난 그냥 2의 기준 레벨에 대한이 같은 뭔가 생각 :
SELECT C1.name
FROM Clients C1, Clients C2
WHERE C1.REFERRAL= 21000301
AND C1.id= C2.REFERRAL
이것은 분명히 AND에서는 작동하지 않습니다. 는 그럼 난 UNION 시도 :
SELECT C1.id, C1.REFERRAL
FROM Clients C1
WHERE C1.REFERRAL= 21000301
UNION
SELECT C2.id, C2.REFERRAL
FROM Clients C2
WHERE C2.REFERRAL= C1.ID
을하지만 그래서, 내 질문은 UNION과 조건을 만들 수있는 방법이있다
SELECT 두 번째에 C1에 액세스 할 수 없습니다. 그렇지 않은 경우 어떻게 해결할 수 있습니까?
2) 직접 추천과 간접 추천을 통해 추천 이름의 이름과 총 추천 수를 클라이언트에 표시하십시오.
나는 완전히 잃어 버렸습니다 : D, 재귀 적이 아닐까요? SQL에 그런 것이 있습니까?
사전에 감사 드리며 불쌍한 나의 가난한 영어.
다음 대답 (코드는 여기 꼴), 난 당신이 날 도울 수 있기를 바랍니다를 참조하십시오. – danielfrg