亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Laravel 根據每個日期計算記錄

Laravel 根據每個日期計算記錄

PHP
SMILET 2023-08-19 14:15:16
在我的數據庫中我有類似的記錄**my_table_name**id      date_column               status1       2020-07-21 00:29:05       done2       2020-07-21 21:29:05       done3       2020-07-21 21:35:05       failed4       2020-07-22 10:29:05       done5       2020-07-22 10:35:05       done6       2020-07-22 10:37:05       failed7       2020-07-22 10:39:05       failed8       2020-07-22 10:40:05       done使用 laravel 查詢我想要這樣的結果array(    [0]=>array(        'date'=>'2020-07-21',        'failed'=>1        'done'=>2     ),   [0]=>array(        'date'=>'2020-07-22',        'failed'=>2        'done'=>3     ))我怎樣才能做到這一點?我努力了$record=DB::table('my_table_name')                    ->select(                            DB::raw("DATE_FORMAT(date_column, 'Y-m-d') as date"),                            DB::raw("SUM(status= 'failed') as failed"),                            DB::raw("SUM(status= 'done') as done"),                            )                    ->where('date_column','>=','2020-07-21 00:00:00')                    ->where('date_column','<=','2020-07-22 23:59:59')                    ->groupBy(DB::raw("DATE_FORMAT(date_column, 'Y-m-d')"))                    ->get();提前致謝
查看完整描述

1 回答

?
富國滬深

TA貢獻1790條經驗 獲得超9個贊

您的代碼似乎沒問題,但使用日期格式“Ymd”而不是“%Y-%m-%d”,這是錯誤的。

為了解決您的問題,請使用以下查詢:

DB::table('my_table_name')::select(
            DB::raw("DATE_FORMAT(date_column, '%Y-%m-%d') as date"),
            DB::raw("SUM(name= 'failed') as failed"),
            DB::raw("SUM(name= 'done') as done"),
            )
            ->whereDate('date_column','>=','2020-07-21')
            ->whereDate('date_column','<=','2020-07-22')
            ->groupBy(DB::raw("DATE_FORMAT(date_column, '%Y-%m-%d')"))
            ->get();


查看完整回答
反對 回復 2023-08-19
  • 1 回答
  • 0 關注
  • 109 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號