2013-07-04 4 views
17

나는 솔직한 대답을 찾을 수 없다. 내 쿼리가 잘못된 결과를 뱉어 내고 있으며 실제 결합으로 "AND"가 표시되지 않기 때문이라고 생각합니다.두 열에 postgres 테이블에 가입 하시겠습니까?

당신은 이런 식으로 뭔가를 할 수 그렇지 않은 경우, 올바른 방법 무엇 :

SELECT * from X 
LEFT JOIN Y 
ON 
    y.date = x.date AND y.code = x.code 

은?

+1

실제 결과입니다 : 사실, 당신은 하나의 는 예를 들어, 키 컬럼에 관련 또는 전혀 심지어 테이블조차, ON 절에 어떤 조건을 넣을 수 있습니다? –

+2

구문이 정확합니다. 그렇지 않으면 오류 메시지가 나타납니다. "잘못된 결과를 뱉어내는"귀하의 설명은 귀하의 문제에 관해 우리에게 아무 것도 알려주지 않습니다. 샘플 데이터와 예상 출력을 보여줘야합니다. 이상적으로 http://sqlfiddle.com에서 간단한 예를 만드십시오. –

답변

14

괜찮습니다. 예상 무엇

SELECT * from X 
LEFT JOIN Y 
    ON y.date = x.date 
    AND y.code = x.code 
    AND EXTRACT (dow from current_date) = 1 
관련 문제