1
특정 SQL 쿼리와 관련하여 약간의 문제가 있습니다. 두 테이블의 데이터를 조인해야하며 세 번째 테이블을 사용하여 데이터를 제한해야합니다.여러 테이블에서 데이터를 얻기 위해 여러 테이블의 조건을 사용해야합니다.
MEMBERS(member_id,first_name,last_name)
MEMBERS_GROUPS(member_id,group_id)
CHARGES(charge_id,member_id,charge_amount,status)
나는 특정 그룹의 모든 구성원에 대한 모든 혐의를 찾을 필요하지만, 나는 또한 MEMBERS 테이블에서 이름과 성을 잡아하려면 다음과 같이 테이블이 있습니다. 나는 또한 시도했다
select c.*, m.first_name, m.last_name
FROM charges c
LEFT JOIN member m
ON c.member_id=m.member_id
INNER JOIN members_groups mg
ON mg.group_id=1
: 내가 지금까지 함께 왔어요 쿼리는
SELECT c.*, m.first_name, m.last_name
FROM charges c, members_groups mg, member m
WHERE c.member_id=mg.member_id
AND mg.group_id = 1
AND c.status='Valid'
AND c.member_id = m.member_id
...하지만 어느 반환 데이터 나는이 필요합니다. 나는이 것을 지나치다 고 확신하지만, 나는 올바른 삶의 가치를 얻을 수 없다. Cartesian 제품 인 것처럼 보입니다. 관계없이 너무 많은 행과 잘못된 데이터를 반환합니다.
*은 이마 난다 * 완전 바보. 메소드에 추가로 더 많이 추가 되었기 때문에 원래 쿼리가 작동하지 않았습니다. 간단히 말해, 확장 된 "AND"쿼리는 방금 게시 한 쿼리 외에도 작동합니다. 고마워. –