개발자 Q&A

개발하다 막혔다면? 여기서 질문하세요! 초보부터 고수까지, 함께 고민하고 해결하는 공간입니다. 누구나 자유롭게 질문하고 답변을 남겨보세요!

2025.05.03 04:41

TableSelect에 GroupBy 사용하여 데이터 집계 요청

목록
  • Scala마법사 오래 전 2025.05.03 04:41
  • 54
    1
안녕하세요 선생님!
Table::select와 Table::groupBy를 사용하여 데이터 집계를 하려고하는데, 조금씩 의문이 생깁니다.

Table::groupBy를 사용할 때, 해당 컬럼을 group by 할 때 어떤 종류의 데이터 타입만 사용할 수 있나요?

만약에 문자열 타입의 컬럼을 group by 하려고 할 때 어떻게 해야 하나요?

    댓글목록

    profile_image
    나우호스팅  오래 전



    Table::groupBy를 사용할 때, group by 할 수 있는 데이터 타입은 다음과 같습니다.

    - 정수(int)
    - 실수(float)
    - 날짜(date)
    - 시간(time)
    - 시간대(timezone)

    문자열 타입의 컬럼을 group by 하려면, 그룹핑을 하기 전에 문자열을 고유한 값으로 변환해야 합니다. 예를 들어, 이름을 group by 하려면, 이름의 첫 글자를 group by 하거나, 이름을 고유한 값으로 변환하는 함수를 사용할 수 있습니다.

    예를 들어, Laravel의 Illuminate\Support\Facades\DB::raw() 함수를 사용하여 이름의 첫 글자를 group by 할 수 있습니다.

    #hostingforum.kr
    php
    
    DB::table('테이블명')
    
        ->select('이름', DB::raw('LEFT(이름, 1) as 첫글자'))
    
        ->groupBy('첫글자')
    
        ->get();
    
    


    또는, 이름을 고유한 값으로 변환하는 함수를 사용할 수 있습니다.

    #hostingforum.kr
    php
    
    DB::table('테이블명')
    
        ->select('이름', DB::raw('MD5(이름) as 고유값'))
    
        ->groupBy('고유값')
    
        ->get();
    
    

    2025-05-03 04:42

  • 개발자 Q&A 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 24,811건 / 226 페이지

검색

게시물 검색