FineBI 取日期的最大max、最小值min

本文介绍了如何在遇到日期类型无法直接使用MAX函数求最大值的问题时,通过将日期转换为数值型,再进行最大值运算,并最终转换回日期格式的方法。通过具体步骤和实例演示了整个过程。

 max语法参考:

 number必须为数值型。

求最大的日期,使用max(日期)会报错:

又一个大bug。

这里只能将日期转换为数值:

公式说明
DATETONUMBER(合同签约时间)自1970年1月1日00:00:00GMT到「合同签约时间」经过的毫秒数。
MAX_AGG(DATETONUMBER(合同签约时间))取当前维度下的最大毫秒数,返回数值类型
TODATE(MAX_AGG(DATETONUMBER(合同签约时间)))将当前维度下的最大毫秒数转为「日期型」
FORMAT(TODATE(MAX_AGG(DATETONUMBER(合同签约时间))),"YYYY-MM-dd HH:mm:ss")对日期型的最大合同签约时间修改格式为「年月日时分秒」格式

例子:将日期 ${DateTime Max-C-ZJ} 转化为数值,再转化为「年月日时分秒」格式的日期。

結果:

 

在C++中,有多种方式可以获取最大值和最小值。 ### 使用标准库`<algorithm>`中的`std::max`和`std::min`函数 C++标准库`<algorithm>`提供了`std::max`和`std::min`函数,用于比较两个值并返回最大值或最小值,这两个函数可以处理各种基本数据类型,并且支持自定义比较函数。 ```cpp #include <iostream> #include <algorithm> int main() { int a = 10, b = 20; int maxVal = std::max(a, b); int minVal = std::min(a, b); std::cout << "最大值: " << maxVal << std::endl; std::cout << "最小值: " << minVal << std::endl; return 0; } ``` ### 对于数据集求最大值和最小值 可以通过自定义函数实现从一组数据中找出最大值和最小值,如引用[1]中的示例代码: ```cpp #include <iostream> #include <vector> #include <limits> void findMinMax(const std::vector<int>& data, int& min, int& max) { // 初始化最大值和最小值 min = std::numeric_limits<int>::max(); max = std::numeric_limits<int>::min(); for(int num : data) { if(num > max) { max = num; } if(num < min) { min = num; } } } int main() { std::vector<int> data = {10, 5, 3, 12, 7, 19, 2, 8}; int min, max; findMinMax(data, min, max); std::cout << "最小值: " << min << std::endl; std::cout << "最大值: " << max << std::endl; return 0; } ``` ### 使用`<climits>`头文件中的常量获取基本整数类型的最值 在`<climits>`头文件中,C++定义了一些常量,表示`int`类型和其他基础数据类型的最小值最大值,如引用[2]中所述。可以直接使用这些常量获取基本整数类型的最值。 ```cpp #include <iostream> #include <climits> int main() { std::cout << "int 类型的最大值: " << INT_MAX << std::endl; std::cout << "int 类型的最小值: " << INT_MIN << std::endl; std::cout << "long 类型的最大值: " << LONG_MAX << std::endl; std::cout << "long 类型的最小值: " << LONG_MIN << std::endl; return 0; } ```
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

种麦南山下

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值