在 Laravel 的表中計算 user_id (Count user_id in a table in Laravel)


問題描述

在 Laravel 的表中計算 user_id (Count user_id in a table in Laravel)

我想使用下面的查詢。

SELECT `name`, COUNT(`user_id`) AS total, SUM(`status` = 'Done') as done 
    FROM posts GROUP BY `name`, `user_id`, `status`

但是當我實現這個...

Post::selectRaw('count(user_id) as total')
    ‑>selectRaw('SUM(status = "Done") as done')
    ‑>groupBy('name')
    ‑>get();

我的數據表沒有顯示任何數據。我的查詢有問題嗎?


參考解法

方法 1:

This should work:

$posts = DB::table('posts')‑>select(DB::raw('count(user_id) as total'))‑>selectRaw('SUM(status = "Done") as done')‑>groupBy('name')‑>get();

Since you didnt provide any info about the models, migrations or logic, im guessing that you have everything else set up correctly.

Also the links that Mohamed Bdr added are great examples and I recommend checking them out.

(by Vysco Zyzadz0nika)

參考文件

  1. Count user_id in a table in Laravel (CC BY‑SA 2.5/3.0/4.0)

#laravel-8 #Laravel #laravel-query-builder






相關問題

在 Laravel 的表中計算 user_id (Count user_id in a table in Laravel)

如何通過模型顯示表中的數據,自定義行除外 (How to show data from table via Model except a custom row)

如何在 Laravel 的模型中為所有貨幣字段(十進制屬性)加上逗號 (How to put comma to all money fields (decimal attributes) in a model in Laravel)

Laravel:8.x 目標類 [ArticlesController] 不存在 (Laravel:8.x Target class [ArticlesController] does not exist)

如何根據 laravel 中的一列獲取最新記錄? (How to get latest record based on one column in laravel?)

訂閱者中間件路由允許公眾查看所有受限頁面 (Subscriber middleware route allowing public to view all restricted pages)

更改徽標默認通知電子郵件 laravel 8 (change logo default notification email laravel 8)

Laravel 8 - 如果用戶有權調用路由,請簽入控制器 (Laravel 8 - Check in Controller if user has permission to call route)

laravel 微風 Multi Auth - 具有兩個不同註冊的 Admin Guard (laravel breeze Multi Auth - Admin Guard with two diffirent registration)

找不到組件的類或視圖 (Unable to locate a class or view for component)

Laravel 8 數據庫不會使用 HTML 表單更新 (Laravel 8 database won't update using HTML form)

Laravel問題從電子郵件驗證傳遞錯誤消息 (Laravel problem to pass error message from email verification)







留言討論