SELECT
SUM( current_in_amt ) AS total_in_amt
FROM
`t_ads_spare_store_in_contrast`
WHERE
STR_TO_DATE( `etl_date`, '%Y-%m-%d' ) >= STR_TO_DATE( '2024-01-01', '%Y-%m-%d' )
AND STR_TO_DATE( `etl_date`, '%Y-%m-%d' ) <= STR_TO_DATE( '2024-01-04', '%Y-%m-%d' );
比如日期格式是 2024-01-01,如果想累加日期不好做比较,那么就采用这种方式来做
或者直接用代码 把所有日期取得,然后in查询算出来
/**
* 获取两个日期之间的所有日期(包括起始日期)
*
* @param startDate 开始日期
* @param endDate 结束日期
* @param formatter 日期格式化器
* @return 日期字符串列表
*/
public static List<String> getDatesBetween(LocalDate startDate, LocalDate endDate, DateTimeFormatter formatter) {
List<String> dates = new ArrayList<>();
while (!startDate.isAfter(endDate)) {
dates.add(startDate.format(formatter));
startDate = startDate.plusDays(1);
}
return dates;
}