2013-07-17 2 views
0

특정 테이블에있는 각 고유 값의 수를 몇 개 계산합니까? 다른 값을 포함하지만 다른 수의 값을 포함하는 열이있는 테이블이 있습니다. 하나의 열에는 값을 나열하고 다른 하나에는 각 값의 수를 나열하는 테이블을 만들고 싶습니다. 난 그냥 4 2 2SQL을 사용하여 계산

답변

4
SELECT count(letter) occurences, 
     letter 
FROM table 
GROUP BY letter 
ORDER BY letter ASC 

기본적으로 당신이 찾고있는 대 ABC와 열 '편지'와 '수'있는 테이블을 만들고 싶어 내가 값 AAAABBCC 아래 을가는 열 '편지'를 말해봐 COUNT() 함수. 이 집계 함수가 있음을 인식하고 당신은 당신의 SELECT 문장의 끝에서 GROUP BY를 사용해야합니다


단일의 두 열 (COL1과 COL2 말한다) 당신이해야 첫 번째 조합을에 당신의 문자가있는 경우 이 같은 하나, 그 후 카운트를 수행 :

SELECT count(letter) occurences, 
     letter 
FROM (SELECT col1 letter 
     FROM table 
     UNION 
     SELECT col2 letter 
     FROM table) 
GROUP BY letter 
ORDER BY letter; 

내부 SELECT 쿼리는 COL1에 COL2의 내용을 추가하고 "문자"에 대한 결과 열 이름을 변경합니다. 바깥 쪽 선택은이 결과 열에있는 각 문자의 발생을 계산합니다.

+0

감사합니다. 완벽한 – euge1220

+0

미안해, 내가 adddendum을 가지고있다 - 나는 테이블 값을 가지고 있다고 말한다 A A A A | B B | C C하지만 값이 다른 열이 있습니다. X X Y Z | X Y | Y Z. 어떻게하면 'Letter'ABC와 'Number of distinct var per letters'를 가진 열을 생성 할 수 있도록 테이블을 만들 수 있습니까? 3 2 2 (이 점은 초보자에 대해 미안합니다) – euge1220

+0

나는 이것을 위해 대답을 편집 할 것입니다. 두 번째 질문 – xionutz2k