有没有大佬指点一下思路

Desktop.rar

附件excel是要实现的效果,现在不太明白怎么根据判定周次为本周还是下周去存储数据

实现效果:通过周次查询本周以及下周数据,但是本周和下周有相同的字段,都存到相同的数据列,怎么查出来就知道是本周还是下周?

FineReport nesy 发布于 2025-6-19 08:07 (编辑于 2025-6-19 08:16)
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共3回答
最佳回答
0
华莉星宸Lv7资深互助
发布于2025-6-19 08:12(编辑于 2025-6-19 08:18)

你这是固定的本周工作和下周工作

不需要判断

根据你上面的筛选条件,直接过滤对应周的数据就行

image.png

--------------

在数据库表中增加一个字段,用来区分本周和下周就行啊

查询的时候  两个数据集(本周和下周),不要写一个数据集

  • nesy nesy(提问者) 数据不会冲突吗?
    2025-06-19 08:17 
  • 华莉星宸 华莉星宸 回复 nesy(提问者) 在数据库表中增加一个字段,用来区分本周和下周就行啊
    查询的时候 两个数据集(本周和下周)【本周和下周的行数大概率是不一样的,所以要两个数据集】
    2025-06-19 08:19 
  • 华莉星宸 华莉星宸 回复 nesy(提问者) 填报属性里面也是两个,一个对应本周,一个对应下周
    2025-06-19 08:22 
最佳回答
0
CD20160914Lv8专家互助
发布于2025-6-19 08:11(编辑于 2025-6-19 08:13)

你弄一个日期维度表,然后用日期关联就行了。这样不管如何变,只要改日期维度表就行了

类似这样,你按日期增加一列周的标识,按你们的业务去增加列,这样再关联查询就行了!

image.png

最佳回答
0
技术支持--哈哈Lv4初级互助
发布于2025-6-19 09:01
1. 使用日期函数区分周次

可以通过在SQL查询中添加周次标记列来实现区分。例如:


SELECT

*,

CASE

WHEN 日期字段 BETWEEN dateInWeek(TODAY(),1) AND dateInWeek(TODAY(),-1) THEN '本周'

WHEN 日期字段 BETWEEN dateInWeek(DATEDELTA(TODAY(),7),1) AND dateInWeek(DATEDELTA(TODAY(),7),-1) THEN '下周'

ELSE '其他周次'

END AS 周次标记

FROM 您的表名
2. 参数化查询

1)添加日期参数控件,让用户选择查询日期2)在SQL中使用类似以下条件:


WHERE

(日期字段 BETWEEN dateInWeek(${date_param},1) AND dateInWeek(${date_param},-1)) -- 本周

OR

(日期字段 BETWEEN dateInWeek(DATEDELTA(${date_param},7),1) AND dateInWeek(DATEDELTA(${date_param},7),-1)) -- 下周
3. 效果展示

查询结果会包含一个"周次标记"列,明确标识每条数据属于本周还是下周:

周次查询效果

注意事项
  • 确保数据库中的日期字段格式正确

  • 国内/国外周定义不同,请根据实际情况调整函数

  • 4关注人数
  • 48浏览人数
  • 最后回答于:2025-6-19 09:01
    请选择关闭问题的原因
    确定 取消
    返回顶部