쿼리 관련 질문 드리니다.

쿼리 관련 질문 드리니다.

QA

쿼리 관련 질문 드리니다.

답변 5

본문

안녕하세요

조인 후에 중복 제거를 위해 group by 하는되요

group by  쿼리 관련 질문드립니다.

> total count 방법 조언 문의 드립니다.

 

** 아래는 쿼리 샘플 및 설명입니다.


SELECT *  FROM 050_cdr A
    INNER  JOIN contel B ON A.vn=B.tel 
WHERE B.id is NOT NULL
GROUP BY A.cdrNo
-- 050_cdr (050 전화 연결된 상태)
-- contel (상담전화)
-- A.vn (050 전화번호), B.tel (매칭된 050 전화번호), B.id (상담전화 고유번호), A.cdrNo(050 고유번호)
 

이 질문에 댓글 쓰기 :

답변 5

Group by 는 묶는 기준점을 명시하는 사항입니다.

 

그외에는 전부 카운트가 가능하죠

위에명시하신 내용으로는 카운트를 하고 싶은 기준을 알기 어렵습니다.

 

cdrNo 를 기준으로 추출하고싶은것들을 하나씩 추려서 카운트 하는게 가장 효과적입니다.

 

select a.cdrNo, count(A.vn) vn_cnt, count(B.tel) B_tel_cnt ...

from 050_cdr A

    INNER JOIN contel B ON A.vn=B.tel and B.id is NOT NULL  --B는 join된 테이블이라서 on 뒤에 명시하는게 낫습니다.

GROUP BY A.cdrNo

형태로 접근가능합니다.

SELECT count(distinct cdrNo) as cnt
FROM 050_cdr A
    INNER  JOIN contel B ON A.vn=B.tel 
WHERE B.id is NOT NULL

---------

이렇에 해서 전체 갯수는 구했는되요

데이터량이 많아 질 경우 느려 질 수 있다고하네요...  

 

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
  • 질문이 없습니다.
전체 0
© SIRSOFT
현재 페이지 제일 처음으로