2013-03-05 3 views
1

두 테이블에 속하는 두 열의 행 수를 표시하고 싶습니다. 그러나 그 결과는 내가 기대 한 바가 아니다. 나는 그것에 대해 정말로 혼란 스럽다. 너는 조언을 해줄 수 있니? 감사.COUNT 구문에서 예기치 않은 결과가 발생했습니다.

SELECT COUNT(TABLE1.INTEREST) FROM INCOME; // RESULT = 10 

SELECT COUNT(TABLE2.LOAN) FROM EXPEND; //RESULT = 10 

SELECT COUNT(TABLE1.INTEREST), COUNT(TABLE2.LOAN) FROM INCOME, EXPEND; //RESULT = 100 

왜 세 번째 SQL 명령을 실행하면 결과가 "100 | 100"입니까? 나는 그 결과가 "10 | 10"이라고 기대한다.

답변

1

당신이 EXPEND의 모든 행에 INCOME의 모든 행에 합류 그것 때문에 당신이

FROM INCOME 
JOIN EXPEND 
ON Income.SomeColumn = Expend.SomeColumn 

같은 것을 할 또는 where 절을 추가 할 필요가 대신 FROM INCOME, EXPEND을하는

을 (카티 제품이라고합니다) 현재 검색어 :

FROM INCOME, EXPEND 
WHERE Income.SomeColumn = Expend.SomeColumn 
관련 문제