Laravelに関するいくつかの質問がありますが、Laravelでテーブルを作成する際に次のようなサポートが必要です。
これは私のコントローラーです:
$workplaces = DB::table('activities')
->orderBy('workplace')
->select('workplace', DB::raw('count(*) as total'))
->groupby('workplace')
->get();
これは私のブレードビューです:
<tr>
<td>Workplaces</td>
<td>Total</td>
</tr>
@foreach($workplaces as $workplace)
<tr>
<td>{{$workplace->name}}
<td>{{$workplace->total}}</td>
</tr>
@endforeach
ここからのユーザーは、すべてのアクティビティをカウントするように助けてくれました。それは大いに役立ちましたが、現在、アクティブなアクティビティと非アクティブなアクティビティをカウントすることはできません。
1つのdb :: rawで2つの選択を行おうとしましたが、機能しません。$ workspacesと$ workspaces_active_activitiesのような2つの変数を使用しようとしましたが、機能しません。2つ作成できません。別のものの中でforeachs。
私の悪い英語でごめんなさい、皆さんがそれを理解することを願っています。注目してくれてありがとう。
コントローラでこれを行います。ただし、必ず変更
strict => false
しconfig/database.php/connections/mysql
て機能させてください。
$workplaces = DB::table('activities')->select( array(
DB::raw( 'workspace_name, activity_name' ),
DB::raw( 'COUNT(*) as `total`' ),
DB::raw(
"SUM(CASE
WHEN status = 'Active' THEN 1 ELSE 0 END) AS 'Active'"
),
DB::raw(
"SUM(CASE
WHEN status = 'inActive' THEN 1 ELSE 0 END) AS 'inActive'"
)
) )
->groupBy('workspace_name')
->get();
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加