那就在填报中设置填报属性:插入提交,而且不要设置主键,再增加一个你的提交时间字段(提交 时间字段主要是为了后面查询最近一次的数据。比如你1号会提交数据,那么提交时间会记录是1号,你10号提交数据,提交时间就是10号)
1、插入提交,不设置主键,同时将不修改价格的字段不要在填报录入价格,那么把没有修改价格的不入库
2、类似这如下这样进入数据库
3、再通过sql按日期取提交时间的最大值最后再关联取到数据,6-1号只会取到提交时间最大的一条,而6-1号34元那个在6-2号提交的数据是不会获取到的
---------------oracel中sql语句如下,其它的数据库参考着类似修改即可-------------
with tmp as(
select '2023-06-01' as 日期,34 as 价格, '2023-06-02' as 提交时间 from dual union all
select '2023-06-02' as 日期,32 as 价格, '2023-06-02' as 提交时间 from dual union all
select '2023-06-03' as 日期,31 as 价格, '2023-06-02' as 提交时间 from dual union all
select '2023-06-04' as 日期,30 as 价格, '2023-06-02' as 提交时间 from dual union all
select '2023-06-05' as 日期,60 as 价格, '2023-06-02' as 提交时间 from dual union all
select '2023-06-06' as 日期,48 as 价格, '2023-06-02' as 提交时间 from dual union all
select '2023-06-07' as 日期,23 as 价格, '2023-06-02' as 提交时间 from dual union all
select '2023-06-08' as 日期,45 as 价格, '2023-06-02' as 提交时间 from dual union all
select '2023-06-09' as 日期,49 as 价格, '2023-06-02' as 提交时间 from dual union all
select '2023-06-01' as 日期,39 as 价格, '2023-06-08' as 提交时间 from dual)
select a.* from tmp a,
(
select 日期,max(提交时间) as 提交时间 from tmp
group by 日期) b
where 1=1
and a.日期=b.日期
and a.提交时间=b.提交时间