2021-09-28|閱讀時間 ‧ 約 2 分鐘

Laravel groupBy MIN() without ignore NULL

mysql中假設groupBy('customer_id') MIN('giveup_date'), 如果欄位中有NULL, 則預設會被忽略。
以下圖為例, 則會拿到2021-09-24 16:42:20。
實務上可能會遇到不想忽略NULL的情況, 解決方法如下:
-select( DB::raw('min(IFNULL(giveup_date, "1000-01-01 00:00:00")) AS min_giveup_date') ) -groupBy('customer_id')
這樣就會拿到1000-01-01 00:00:00了! 等於是把NULL替換成一個很小的datetime,且資料中確定沒這個值。
分享至
成為作者繼續創作的動力吧!
© 2024 vocus All rights reserved.