为变量设置最大值。认知
Setting a maximum value for a variable. Cognos
我开始在 BI 工作,因为我来自 C# 而不是 SQL/cognus,所以有人给了我一个脑筋急转弯。
我得到一个号码。它可以介于 0 和一个非常大的数字之间。当我得到它并且它低于 1,000 时,一切都很好。但如果它大于或等于 1,000 ,我应该使用 1,000 代替。
我不允许使用条件,我需要它是纯数学,或者如果我不能那么我应该使用有效的方法。
我认为这很简单,只需使用 Min(),但在 cognus 和 SQL 中的工作方式显然不同。
使用LEAST()
函数:
Oracle 设置:
CREATE TABLE data ( value ) AS
SELECT 1 FROM DUAL UNION ALL
SELECT 999 FROM DUAL UNION ALL
SELECT 1000 FROM DUAL UNION ALL
SELECT 1001 FROM DUAL;
查询:
SELECT value, LEAST( value, 1000 ) AS output FROM data
输出:
VALUE OUTPUT
----- ------
1 1
999 999
1000 1000
1001 1000
我开始在 BI 工作,因为我来自 C# 而不是 SQL/cognus,所以有人给了我一个脑筋急转弯。 我得到一个号码。它可以介于 0 和一个非常大的数字之间。当我得到它并且它低于 1,000 时,一切都很好。但如果它大于或等于 1,000 ,我应该使用 1,000 代替。
我不允许使用条件,我需要它是纯数学,或者如果我不能那么我应该使用有效的方法。
我认为这很简单,只需使用 Min(),但在 cognus 和 SQL 中的工作方式显然不同。
使用LEAST()
函数:
Oracle 设置:
CREATE TABLE data ( value ) AS
SELECT 1 FROM DUAL UNION ALL
SELECT 999 FROM DUAL UNION ALL
SELECT 1000 FROM DUAL UNION ALL
SELECT 1001 FROM DUAL;
查询:
SELECT value, LEAST( value, 1000 ) AS output FROM data
输出:
VALUE OUTPUT
----- ------
1 1
999 999
1000 1000
1001 1000