Laravel 은 Eloquent 모델 그룹 조 회 를 실현 하고 각 그룹의 수량 groupBy()를 되 돌려 줍 니 다.

Laravel 5.5
Linux mint 18
PHPStorm
최근 에 Laravel 을 하 자마자 매 뉴 얼 소스 코드 를 다 보지 도 못 하고 작은 프로젝트 를 해 보고 싶 었 습 니 다.그 중에서 한 가지 요 구 는 데이터베이스 에 있 는 필드 를 그룹 으로 나 누 어 조회 하고 각 그룹의 수량 을 되 돌려 주 는 것 입 니까?아니면 매 뉴 얼 을 넘 기 는 것 입 니까?

groupBy   having               。having        where     :
$users = DB::table('users')
   ->groupBy('account_id')
   ->having('account_id', '>', 100)
   ->get();
그물 위 에서 조사해 보 니 바퀴 하 나 를 발견 하 였 다.

$user_info = DB::table('usermetas')
    ->select('browser', DB::raw('count(*) as total'))
    ->groupBy('browser')
    ->get();
수첩 다시 찾 아 봐.

##      Select   #

  ,                   。      select         select           :

$users = DB::table('users')->select('name', 'email as user_email')->get();

##      #

                   。                   ,          SQL     !          ,     DB::raw   :

$users = DB::table('users')
     ->select(DB::raw('count(*) as user_count, status'))
     ->where('status', '<>', 1)
     ->groupBy('status')
     ->get();
안 타 깝 게 도 늘 소란 을 피 우 고 기적 적 인 음 교 를 쓰 지 않 으 면 자신 이라는 연예인 에 게 떳떳 하지 못 할 것 이 라 고 생각 하지 않 아 생 겼 다.

$sql = Data::raw('count(*) as value');

$obj = self::whereBetween('modified',[$begin,$end])->select('city as name',$sql)
            ->groupBy('city')
            ->get()
            ->toArray();
코드 도 천만에요. 바로 짐 을 내 려 놓 았 습 니 다.
결점 은 이 말 에 있다.

$sql = Data::raw('count(*) as value'); 
데이터(Model)를 사 용 했 습 니 다.Builder 대상 으로 돌 아 왔 는데 문자열 이 필요 해서 바 꿨 습 니 다.

$sql = DB::raw('count(*) as value');
이때$sql 은 string 입 니 다.여기 서 Model 을 사용 할 수 있 는 방법 이 있 습 니 다.천천히 연구 하 세 요.갈 길이 멀 습 니 다!
참고:
Laravel Eloquent groupBy() AND also return count of each group
이상 의 이 Laravel 은 Eloquent 모델 을 그룹 으로 나 누 어 조회 하고 각 그룹의 수량 을 되 돌려 줍 니 다.groupby()는 바로 작은 편집 이 여러분 에 게 공유 한 모든 내용 입 니 다.참고 하 실 수 있 고 많은 응원 부 탁 드 리 겠 습 니 다.

좋은 웹페이지 즐겨찾기