>  기사  >  백엔드 개발  >  laravel: 하나의 명령문만 사용하여 테이블의 다양한 조건에 해당하는 데이터 항목 수를 찾는 방법

laravel: 하나의 명령문만 사용하여 테이블의 다양한 조건에 해당하는 데이터 항목 수를 찾는 방법

WBOY
WBOY원래의
2016-08-04 09:19:16917검색

Laravel: 하나의 문만 사용하여 테이블에서 다양한 조건에 해당하는 데이터 항목 수를 찾는 방법

다음 표:

<code>id       name          age          sex 
1          a            1            0
2          b            10           1          
3          c            2            1
</code>

얻기: 성별 수는 1, 나이는 2, 성별 수는 1, 나이는 5, 성별 수는 1, 나이는 10
요구 사항: 고효율
어쩌면 내가 성별이 1일 때, 2세는 몇 명, 5세는 몇 명, 10세는 몇 명을 얻어야 하는지 매우 명확합니다.

참고: 원본 명령문이 아닌 Laravel 프레임워크 명령문을 사용하는 것이 가장 좋습니다. 데이터 양은 수십만에서 수백만입니다.

모두들 도와주세요~

답글 내용:

Laravel: 하나의 문만 사용하여 테이블에서 다양한 조건에 해당하는 데이터 항목 수를 찾는 방법

다음 표:

<code>id       name          age          sex 
1          a            1            0
2          b            10           1          
3          c            2            1
</code>

얻기: 성별 수는 1, 나이는 2, 성별 수는 1, 나이는 5, 성별 수는 1, 나이는 10
요구 사항: 고효율
어쩌면 내가 성별이 1살일 때, 2살은 몇 살, 5살은 몇 살, 10살은 몇 마리를 얻어야 하는지 아주 명확합니다.

참고: 원본 문이 아닌 Laravel 프레임워크 문을 사용하는 것이 가장 좋습니다. 데이터 양은 수십만에서 수백만에 이릅니다.

모두들 도와주세요~

이 문장을 보세요
Table::select(DB::raw('age,count(id) count'))->where('sex',1)->groupBy('age')->get()->toArray();

저는 SQL에 대해 잘 모르지만 Eloquent ORM 대신 Query Builder를 사용하면 효율성을 높일 수 있습니다. 이 ORM은 매우 강력하지만 Laravel에서 가장 느린 부분이기도 합니다.

토픽 소유자의 요청이라면 DB의 집계 기능을 활용하라는 것입니다
DB::table('yourtable')->where('sex', 1)->where('age', $age)->count();
이게 포스터의 원래 논리인지는 모르겠습니다

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.