저는 쿼리에 대한 작업을하고 있으며 동일한 행을 여러 번 표시합니다. 둘 사이를 번갈아 표시합니다. 내가 언급 한 모든 테이블에서 모든 열을 선택하고 행 사이의 차이점을 보지 못했습니다 테스트. 리턴 된 행이 2 개만 있어야하며 10을 초과한다는 점에 유의하십시오.sql select는 동일한 행 집합을 여러 번 반환합니다.
이것은 trc 테이블과 mlc 테이블을 결합하는 것과 관련이 있다고 생각하지만이를 고치는 방법에 대해 고민하고 있습니다. 어떤 도움을 주셔서 감사합니다. 감사.
SELECT mlc.click_amount AS memPayout
FROM tbl_trackvalue AS trv, tbl_tracking AS t, tbl_offers AS off, tblusers AS usr, tbl_mailchimp_trackvalue as mlc
WHERE mlc.tracking_id = trv.tracking_id
AND off.id = t.offer_id
AND off.offer_type = 'mailchimp'
AND usr.id = trv.tr_user_id
AND trv.tr_user_id =1454
AND mlc.requested_date = '2014-01-21'
AND mlc.payment_status = 'pending'
AND mlc.requested_status = 'declined'
업데이트 된 코드 :.. II는 (다시 변경
SELECT mlc.click_amount AS memPayout
FROM tbl_trackvalue AS trv, tbl_offers AS off, tbl_mailchimp_trackvalue as mlc
WHERE mlc.tracking_id = trv.tracking_id
AND off.id = trv.tr_offer_id
AND off.offer_type = 'mailchimp'
AND trv.tr_user_id =1454
AND mlc.requested_date = '2014-01-21'
AND mlc.payment_status = 'pending'
AND mlc.requested_status = 'declined'
UPDATE, 그것은 도움을 주셔서 감사합니다 작동이 시간 나는 아주 새로운 해요, 지금은 이름 조인 명시의 중요성을 실현 :
SELECT mlc.click_amount AS memPayout
FROM tbl_mailchimp_trackvalue as mlc inner join tbl_trackvalue AS trv on mlc.tracking_id=trv.tracking_id
WHERE trv.type = 'mailchimp'
AND trv.tr_user_id =1454
AND mlc.requested_date = '2014-01-21'
AND mlc.payment_status = 'pending'
AND mlc.requested_status = 'declined'
가입이 누락 된 경우 테이블 구조를 게시하거나 http://sqlfiddle.com/을 작성해야합니다. – Sumit
'내부 조인 (inner join) '을 사용하면 조인이 where 절의 필터와 분명히 구별되는 것을 알 수 있습니다. 그것은 또한 당신이 그들에서 만든 모든 오류를 발견하는 데 도움이 될 것입니다. – GolezTrol
테이블 tblusers 테이블 가입처럼 보이는 꽤 쓸모가 없다. – Xardas