mysql空位补0_Mysql查询时间范围内的数据如果为空则补全
为0
mysql 查询出来平底锅怎么画 的数据
因为⽇志要做统计,所以我需要每天都展⽰出来,如果为空,则展⽰为0,显然上图中的10-18⽇没有展⽰出来
在⽹上看了⼀圈都是基于数据库实现的,感觉有些⿇烦,本⽂介绍的是代码实现,亲测可⽤,废话不多说:
DO 类 数据库的结果集
@Data
public class Demo{
@JsonFormat( pa提高视力的方法 ttern="yyyy-MM-dd", time书法的诗句 zone = "GMT+8")
@ApiModelPr梦见孩子丢了 operty("⽇期")
private LocalDate date;
@ApiModelProperty("数量")
private int count;
}
⼯具类
/**
* 后台查询出来的时间范围数据,如果有的⽇期没有数据为空,则给补全为0
* LocalDate 是java8中的类,好⽤且性能强
* d1 和d2代表时间范围
*/
public static List transNullToZero(List list,Date d1, Date d2){
Lo客厅灯带 calDate start = dateToLocalDate(d1);
LocalDate end = dateToLocalDate(d2);
int count = 0 ;
// 如果两个⽇期相等,就停阿开头的成语 ⽌执⾏
while(!l(end)){
Demo demo= new Demo();
if(list!=null&&()>count){
Demo demo1= (count);
LocalDate dat = e();
if(!l(dat)){
nt(0);
e(start);
(count,demo);
}
}el{
nt(0);
e(start);
(count,demo);
}
// 将开始⽇期加1天
start = ys(1);
count++;
}
return list;
}
/**
* 将 Date 转为 LocalDate
*/
public static LocalDate dateToLocalDate(Date date) {
return ant().atZone(Default()).toLocalDate();
}
本文发布于:2023-04-28 05:17:24,感谢您对本站的认可!
本文链接:https://www.wtabcd.cn/fanwen/fan/89/852264.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |