当前位置: 首页 > 工具软件 > F-Spot > 使用案例 >

Spotfire 表达式之转换函数

姚阳德
2023-12-01

函数

说明

Base64Decode(Arg1)

将 base64 字符串解码为二进制大对象,以便可以在 Spotfire 中将其作为图像查看。

示例:

Base64Decode([Column])

Base 64Encode(Arg1)

将二进制大对象编码为 base64 字符串。如果 Spotfire 中的数据将导出至其他应用程序,这可能很有用。

示例:

Base64Encode([Column])

Boolean(Arg1)

将列或值转换为“布尔值”。

示例:

Boolean([Column])

Cast(Arg1 as type)

将任何表达式转换为任意类型(空/未定义除外)。

无效值已传播。为不同类型的输入及不同输出中的输出类型结果执行转换。有关详细信息,请参见转换方法

示例:

Cast([IntegerColumn] as Currency)

Currency(Arg1)

将列或值转换为货币。

示例:

Currency([Column])

Date(Arg1, ..., Arg3)

将列或值转换为日期。如果使用一个参数,Arg1 可以为字符串、日期时间或整数类型。如果指定了字符串,则日期必须以 Spotfire 可以识别的形式书写。此外,日期的所有部分(年、月、日)都必须存在。

如果已指定日期时间,则时间部分将删除。

如果提供了三个参数,它们必须为整数值。第一个参数为年份,第二个为月份,而第三个为月中第几日。

如果提供了一个整数参数,则日期函数会将整数视作刻度。刻度从日期 01-01-01(零一年一月一日)开始以 100 纳秒为单位进行计数。

另请参见日期和时间函数以及转换方法

示例:
Date("2003-03-21")                        → 3/21/2003

Date("3/21/03")                                → 3/21/2003
Date("10")                                         → (Empty)
Date(null)                                         → (Empty)
Date("2003-03-21 11:37:00")       → 3/21/2003

Date(2003,03, 21)                          → 3/21/2003

Date(605000000000000000l)     → 3/4/1918

(可用的输出格式取决于当前区域。)

DateTime(Arg1, Arg2, ..., Arg7)

将列或值转换为日期时间。如果使用一个参数,Arg1 可以为字符串、日期或整数类型。如果指定了字符串,则日期必须以 Spotfire 可以识别的形式书写。此外,必须至少存在日期的所有部分(年、月、日)。如果指定了日期,则时间部分设置为 00:00:00 (12:00:00 AM)。

如果提供了七个参数,它们必须为整数值。第一个参数为年份,第二个为月份,第三个为月中第几日,第四个为小时,第五个为分钟,第六个为秒钟,而第七个参数为毫秒。

如果提供了一个整数参数,则日期时间函数会将整数视作刻度。刻度从日期 01-01-01(零一年一月一日)开始以 100 纳秒为单位进行计数。

另请参见日期和时间函数以及转换方法

示例:
DateTime("2003-03-21 11:37:00")      → 3/21/2003 11:37:00 AM
DateTime("10")                                       → (Empty)  
DateTime(null)                                        → (Empty)
DateTime("2003-03-21")                       → 2003-03-21 00:00:00

DateTime(2003, 03, 21, 11, 37, 00)    → 2003-03-21 11:37:00

DateTime(605000000000000000l)    → 3/4/1918 11:33:20 AM

(可用的输出格式取决于当前区域。)

FirstValidAfter(Arg1)

将列中的空值替换为缺失值之后的第一个有效值。

示例:

FirstValidAfter([Column])

FromEpochMilliseconds(Arg1)

将列或值转换为日期时间,其中数字将被解释为自 1970 年 1 月 1 日以来经过的毫秒数。

示例:

FromEpochMilliseconds(231312)

FromEpochSeconds(Arg1)

将列或值转换为日期时间,其中数字将被解释为自 1970 年 1 月 1 日以来经过的秒数。

示例:

FromEpochSeconds(231312)

Integer(Arg1)

将列或值转换为整数。如果无法转换,则将返回错误。Arg1 可以为整数、实数或字符串类型,结果将为整数类型。实数将被截断,即只使用整数部分。

示例:
Integer("-123")        → -123
Integer(-2.99)         → -2
Integer("0%")         → (Empty)
Integer(1e20)         → (Empty)

Integer(null)           → (Empty)

LastValidBefore(Arg1)

将列中的空值替换为缺失值之前的最后一个有效值。

示例:

LastValidBefore([Column])

LongInteger(Arg1)

将列或值转换为“长整型”。

示例:

LongInteger([Column])

ParseDate(Arg1, ..., Arg3)

从字符串解析日期到“日期”格式。第一个参数是包含日期的字符串或字符串列。

第二个参数是说明日期结构的格式字符串,第三个(可选)参数是文化代码。

示例:

ParseDate("2013-09-17", "yyyy-MM-dd")

ParseDate("17-okt-2013","dd-MMM-yyyy","sv-SE")

ParseDateTime(Arg1, ..., Arg3)

从字符串解析日期/时间信息到“日期”格式。第一个参数是包含日期/时间信息的字符串或字符串列。

第二参数是说明信息结构的格式字符串,第三个(可选)参数是文化代码。

示例:

ParseDateTime("2013-09-17 10:30", "yyyy-MM-dd h:mm")

ParseDateTime("17-okt-2013 13:25","dd-MMM-yyyy HH:mm","sv-SE")

ParseReal(Arg1, Arg2)

将字符串解析为实数值。第一个参数是字符串或字符串列。第二个(可选)参数是文化代码。

示例:

ParseReal([Column], "en-US")

ParseReal("7.25")

ParseTime(Arg1, ..., Arg3)

从字符串解析时间到“时间”格式。第一个参数是包含时间的字符串或字符串列。

第二个参数是说明时间结构的格式字符串,第三个(可选)参数是文化代码。

示例:

ParseTime("9:25", "h:mm")

ParseTime("17:30", "HH:mm","sv-SE")

ParseTimeSpan(Arg1, Arg2, Arg3)

将字符串中的时间跨度信息解析为时间跨度格式。第一个参数是包含时间跨度信息的字符串或字符串列。

第二参数是说明信息结构的格式字符串,第三个(可选)参数是文化代码。

示例:

ParseTimeSpan("5.7:11:3.1", "d.h:m:s.f", "sv-SE")

ParseTimeSpan("123 3 11 7 -5", "f s m h d")

Real(Arg1)

将列或值转换为实数。如果无法转换,则将返回错误。Arg1 可以为整数、实数或字符串类型,结果将为实数类型。

示例:
Real(1.23)      → 1.23
Real(2)            → 2
Real("0%")      → (Empty)
Real(null)        → (Empty)

SingleReal(Arg1)

将列或值转换为“单精度实数”。

示例:

SingleReal([Column])

SN(Arg1, Arg2)

替换空值。如果不为空,则将返回 Arg1,否则将返回 Arg2。Arg1 和 Arg2 可以为任何类型,但这两者都必须属于同一类型或同为空。结果与参数具有相同的类型。

常见用法是替换列中的空值。如果 Arg1 是列,Arg2可以是与此列中的内容具有相同类型的值,也可以是具有相同内容类型的列。如果 Arg2 也是列,则 Arg1 中的错误将被替换为 Arg2 中同一行中的值。

示例:
SN(1, 2)        → 1
SN(null, 2)    → 2
SN(0/0, 2)     → #NA

SN([Column], 1) →1(如果列中为空值)

SN([Column1], [Column2]) →(Column1 中为空值时使用 Column2 中的值)

String(Arg1)

将列或值转换为字符串。Arg1 可以为任何类型,结果为字符串类型。

注意:此函数始终使用默认值格式设置。这可能会导致转换数值时精度降低。

 

示例:
String(1.23)     → "1.23"
String(null)      → (Empty)

Time(Arg1, Arg2,..., Arg4)

将列或值转换为时间。如果无法转换,则将返回错误。如果使用单个参数,则该参数的类型可以是 String、DateTime 或 Integer。如果指定了一个字符串,时间必须写作 Spotfire 可以识别的格式。此外,必须指定时和分。请参见以下示例。如果已指定日期时间,则日期部分将删除。

如果提供了四个参数,它们必须为整数值。第一个参数为小时,第二个为分钟,第三个为秒钟,而第四个为毫秒。

如果提供了一个整数参数,则时间函数会将整数视作刻度。刻度从日期 01-01-01(零一年一月一日)开始以 100 纳秒为单位进行计数。

另请参见日期和时间函数以及转换方法

示例:
Time("11:37:00")                          → 11:37:00
Time("10")                                     → (Empty)
Time (null)                                     → (Empty)
Time(11, 30, 20, 4)                      → 11:30:20

Time(605000000000000000l)  → 11:33:20 AM

(可用的输出格式取决于当前区域。)

TimeSpan(Arg1, Arg2,...Arg5))

将从列或值创建 TimeSpan。如果给定一个参数,则输入列可以为字符串或 TimeSpan 类型。如果指定了字符串,则必须以“[-]d.h:m:s.ms”格式写入 TimeSpan。

如果提供了五个参数,则第一个参数为天,第二个为小时,第三个为分,第四个为秒,第五个为毫秒。前四个参数为整数,最后一个为实数。

示例:

TimeSpan([Column])

TimeSpan("247.5:17:11.5002")

TimeSpan(247, 05, 17, 11, 500.2)

ToEpochMilliseconds(Arg1)

将列或值从日期时间转换为表示自 1970 年 1 月 1 日起经过的毫秒数的数字。

示例:

ToEpochMilliseconds([Date])

ToEpochSeconds(Arg1)

 

将列或值从日期时间转换为表示自 1970 年 1 月 1 日起经过的秒数的数字。

示例:

ToEpochSeconds([Date])

 类似资料: