我想使周的第一天是用户可配置的,因此用户提供周的开始日、开始日期、结束日期作为我现有查询中的用户参数,该查询基于开始日期和结束日期返回周编号(现有查询返回符合ISO的周编号,从星期一(1)开始的日期和结束日星期日(7))。
我在Java代码中使用的周数,用于创建周组(例如:如果开始日期是2022年11月21日&结束日期是2022年11月5日&周开始日是星期三,则预期日期组是2022年11月21日到2022年11月22日、2022年11月23日到2022年12月29日、2022年11月30日到2022年12月5日)。
我应该在现有的查询中更改什么,以便它根据用户提供的开始日期返回确切的周数,开始日期,结束日期作为参数?
select m.tool_id, m.module_location, alarm_count, recipe_id, alarm_alias, alarm_issuer_name,
DATE_PART('week',alarm_date) AS week,
DATE_PART('year',alarm_date) AS yearNo
from alarms.alarm_count a, alarms.alarm_module m, alarms.alarm_issuer ai
where a.module_uuid = m.module_uuid and a.alarm_issuer_uuid = ai.alarm_issuer_uuid
and m.module_uuid in (
'027909d4-12dd-4b7d-a391-847f88ee97ab',
'212277f4-9d05-4465-95f7-a99fcb936451')
and (a.alarm_date) BETWEEN '2022-11-21' and '2022-12-05'
and severity in ('Critical','Error','Fatal')
1条答案
按热度按时间jq6vz3qz1#
参见dbfiddle