ホームページ  >  記事  >  バックエンド開発  >  laravel:1つのステートメントだけを使用してテーブル内のさまざまな条件に対応するデータ項目の数を見つける方法

laravel:1つのステートメントだけを使用してテーブル内のさまざまな条件に対応するデータ項目の数を見つける方法

WBOY
WBOYオリジナル
2016-08-04 09:19:16894ブラウズ

laravel: 1 つのステートメントのみを使用して、テーブル内のさまざまな条件に対応するデータ項目の数を見つける方法

下の表:

リーリー

取得:セックスの回数が1で年齢が2、セックスの回数が1で年齢が5、セックスの回数が1で年齢が10
要件:高効率
あまり明確に表現できなかったかもしれません、それを取得する必要があります 答えは、セックスを1としたとき、2歳は何人、5歳は何人、10歳は何人です

注: オリジナルのステートメントではなく、Laravel フレームワークのステートメントを使用するのが最善です。データの量は数十万から数百万のアイテムに及ぶ可能性があります

みなさん、助けてください〜

返信内容:

laravel: 1 つのステートメントのみを使用して、テーブル内のさまざまな条件に対応するデータ項目の数を見つける方法

下の表:

リーリー

取得:セックスの回数が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 までご連絡ください。