cómo cambiar el valor nulo a cero
Sep 24 2020
los valores de las columnas vacías devuelven nulo. Cómo hago para convertir el nulo en cero para que si el valor es nulo devuelva cero.
public function getThumbsUpAttribute($value){ return $value !== null ? $value : 0; } public function videos() { // return VideoViewsLikes::all(); $rec_videos = Videos::orderBy('videos.created_at', 'DESC')->where('videos.publish', 1)
->leftJoin('video_views_likes', 'videos.vid_id', '=', 'video_views_likes.vid_id')
->select('videos.vid_id', 'videos.title as title', DB::raw("sum(video_views_likes.thumbs_down) as dislike"), DB::raw("sum(video_views_likes.views) as views"), DB::raw("sum(video_views_likes.thumbs_up) as likes"))
->groupby('videos.vid_id')
->groupby('videos.title')
->get();
return response()->json(['success' => $rec_videos]);
}
todavía devuelve nulo.
Respuestas
2 OMR Sep 24 2020 at 17:29
en vez de:
DB::raw("sum(video_views_likes.thumbs_down) as dislike");
puede usar COALESCE que devuelve el primer valor no nulo
DB::raw(" COALESCE(sum(video_views_likes.thumbs_down),0) as dislike");