2017-05-11 6 views
-2

나는 많은 colums특정 그룹의 모든 레코드를 SQL (원하는 인덱스로)로 가져 오는 방법은 무엇입니까?

에 의해 그룹을 사용하여 그룹으로 수백만 개의 기록을 집계 임팔라 쿼리를
select col1, col3, col5, col7, col23 col24, count(*) as count 
from my_table 
group by col1, col3, col5, col7, col23 col24 

결과 : 다행스럽게도 필자는 SQL의 특정 그룹의 모든 레코드를 가져 어떻게

col1, col3, col5, col7, col23 col24, count 
John, Michaels, USD, ABC, 123, AA, 1243560969 
Ryan, Jones, USD, FCC, 101, BB, 5043855 
James, Gerrity, YEN, FCC, 102, BA, 37876899 

(기준 색인)?

내가

SELECT * 
FROM GROUP 3 IN (
    select col1, col3, col5, col7, col23 col24, count(*) as count 
    from y_table 
    group by col1, col3, col5, col7, col23 col24, count 
) 

같은 것을 찾고 있어요 당신이 가능하다고 생각하십니까? 어떤 제안이라도 대단히 감사합니다!

+0

당신 ' 실제로 사용하고 있습니다. – jarlh

+1

왜 집계 (계산) 필드로 그룹화 하시겠습니까? 또한 키워드를 열 별칭으로 사용하는 것은 좋은 생각이 아닙니다. – JohnHC

+0

그룹을 어떻게 정의합니까? 그룹 3은 무엇입니까 ?? 또한, 그룹 절의 수를 0 개로 줄이십시오. –

답변

0

시도 :

select col1, col3, col5, col7, col23, col24, 
count(*) as cnt, some_function_to_form_groups as grp 
from my_table 
group by col1, col3, col5, col7, col23, col24 
having grp = 3 

some_function_to_form_groups 얻을 left(col1,1) {or equivalent}이 될 수 이니셜 등

참여하지 않은 제품에 태그를하지 마십시오 ... 이제 다시 태그 중 하나의 DBMS에 대한 1 점을 추가하는 듯