我需要根据今天的日期提取上一季度的数据。我需要使其动态。
使用intnx,我可以提取最后一天,而不是第一天。
data _null_;
a = intnx('quarter',today(),-1,'end');
format a date9.;
put a;
run;
任何人都可以分享如何获取上一季度的开始和结束日期的逻辑吗?
答案 0 :(得分:2)
您只需要对intnx函数的最后一个参数进行较小的修正
private ViewModelStoreOwner getStoreOwner() {
NavController navController = Navigation
.findNavController(requireActivity(), R.id.root_navigator_fragment);
return navController.getViewModelStoreOwner(R.id.root_navigator);
}
private void setUpSearchViewModel() {
searchViewModel = new ViewModelProvider(getStoreOwner()).get(SearchViewModel.class);
}
答案 1 :(得分:1)
来自可靠的INTNX
documentation:
第四个参数 alignment 是可选的
“对齐”
控制时间间隔内SAS日期的位置。您必须将对齐方式放在引号中。对齐方式可以是以下值之一:
开始
指定返回的日期或日期时间值与间隔的开始对齐。
别名 B中级
指定返回的日期或日期时间值与间隔的中点对齐,该间隔是开始和结束对齐值的平均值。
别名 MEND
指定返回的日期或日期时间值与间隔的结尾对齐。 别名 E- 相同 指定返回的日期与输入日期具有相同的对齐方式。
别名 S,同一天,请参见SAME Alignment。默认开始
请参见 Aligning SAS Date Output within Its Intervals以获取更多信息。