Compartir a través de

映射数据流中的转换函数

适用于:Azure 数据工厂 Azure Synapse Analytics

数据流在 Azure 数据工厂和 Azure Synapse 管道中均可用。 本文适用于映射数据流。 如果不熟悉转换,请参阅介绍性文章使用映射数据流转换数据

以下文章详细介绍了映射数据流中 Azure 数据工厂和 Azure Synapse Analytics 所支持的表达式和函数。

转换函数列表

转换函数用于转换数据和数据类型测试

转换函数 任务
ascii 返回输入字符的数值。 如果输入字符串具有多个字符,则返回第一个字符的数值
char 返回由输入数字表示的 ascii 字符。 如果数字大于 256,则结果等效于 char(number % 256)
decode 根据给定的字符集,将编码的输入数据解码为字符串。 第二个(可选)参数可用于指定要使用的字符集 -“US-ASCII”、“ISO-8859-1”、“UTF-8”(默认)、“UTF-16BE”、“UTF-16LE”、“UTF-16”
encode 根据字符集将输入字符串数据编码为二进制。 第二个(可选)参数可用于指定要使用的字符集 -“US-ASCII”、“ISO-8859-1”、“UTF-8”(默认)、“UTF-16BE”、“UTF-16LE”、“UTF-16”
isBitSet 检查是否在此位集中设置了位的位置
setBitSet 在此位集中设置位的位置
isBoolean 根据 toBoolean() 规则检查 string 值是否是 boolean 值
isByte 根据 toByte() 规则检查 string 值是否是给定可选格式的 byte 值
isDate 使用可选输入日期格式检查输入日期字符串是否为日期。 有关可用格式,请参阅 Java 的 SimpleDateFormat。 如果省略输入日期格式,则默认格式为 yyyy-[M]M-[d]d。 接受的格式为 [ yyyy, yyyy-[M]M, yyyy-[M]M-[d]d, yyyy-[M]M-[d]dT* ]
isShort 根据 toShort() 规则检查给定可选格式的字符串值是否过短
isInteger 根据 toInteger() 规则检查给定可选格式的字符串值是否为整数
isLong 根据 toLong() 规则检查给定可选格式的字符串值是否过长
isNan 检查值是否非数字。
isFloat 根据 toFloat() 规则检查给定可选格式的字符串值是否为浮点值
isDouble 根据 toDouble() 规则检查给定可选格式的字符串值是否为双精度值
isDecimal 根据 toDecimal() 规则检查给定可选格式的字符串值是否为十进制值
isTimestamp 使用可选输入时间戳格式检查输入日期字符串是否为时间戳。 有关可用格式,请参阅 Java 的 SimpleDateFormat。 如果省略时间戳,则使用默认模式 yyyy-[M]M-[d]d hh:mm:ss[.f...]。 可以“GMT”、“PST”、“UTC”、“America/Cayman”格式传递可选的时区。 时间戳最多支持毫秒准确度,值为 999。有关可用格式,请参阅 Java 的 SimpleDateFormat。
toBase64 以 base64 编码给定字符串。
toBinary 将任何数字/日期/时间戳/字符串转换为二进制表示形式。
toBoolean 可将 ('t', 'true', 'y', 'yes', '1') 值转换为 true,将 ('f', 'false', 'n', 'no', '0') 值转换为 false,将其他任何值转换为 NULL。
toByte 将任何数字或字符串转换为字节值。 可以使用可选的 Java 十进制格式进行转换。
toDate 使用可选输入日期格式将输入日期字符串转换为日期。 请参阅 Java 的 SimpleDateFormat 类,了解可用格式。 如果省略输入日期格式,则默认格式为 yyyy-[M]M-[d]d。 接受的格式包括:[ yyyy、yyyy-[M]M、yyyy-[M]M-[d]d、yyyy-[M]M-[d]dT* ]。
toDecimal 将任何数字或字符串转换为小数值。 如果未指定精度和小数位,则默认使用 (10,2)。 可以使用可选的 Java 十进制格式进行转换。 采用 BCP47 语言形式(如 en-US、de、zh-CN)的可选区域设置格式。
toDouble 将任何数字或字符串转换为双精度值。 可以使用可选的 Java 十进制格式进行转换。 采用 BCP47 语言形式(如 en-US、de、zh-CN)的可选区域设置格式。
toFloat 将任何数字或字符串转换为浮点值。 可以使用可选的 Java 十进制格式进行转换。 截断任何双精度数。
toInteger 将任何数字或字符串转换为整数值。 可以使用可选的 Java 十进制格式进行转换。 截断任何长整型数、浮点数、双精度数。
toLong 将任何数字或字符串转换为长值。 可以使用可选的 Java 十进制格式进行转换。 截断任何浮点数、双精度数。
toShort 将任何数字或字符串转换为短值。 可以使用可选的 Java 十进制格式进行转换。 截断任何整数、长整型数、浮点数、双精度数。
toString 将基元数据类型转换为字符串。 你可以为数字和日期指定格式。 如果未指定,则选择系统默认值。对数字使用 Java 十进制格式。 有关所有可能的日期格式,请参阅 Java SimpleDateFormat;默认格式为 yyyy-MM-dd。
toTimestamp 根据可选的时间戳格式将字符串转换为时间戳。 如果省略时间戳,则使用默认模式 yyyy-[M]M-[d]d hh:mm:ss[.f...]。 可以“GMT”、“PST”、“UTC”、“America/Cayman”格式传递可选的时区。 时间戳支持高达 999 毫秒的精度值。 请参阅 Java 的 SimpleDateFormat 类,了解可用格式。 https://docs.oracle.com/javase/8/docs/api/java/text/SimpleDateFormat.html
toUTC 将时间戳转换为 UTC。 可以“GMT”、“PST”、“UTC”、“America/Cayman”格式传递可选的时区。 默认使用当前时区。 请参阅 Java 的 SimpleDateFormat 类,了解可用格式。 https://docs.oracle.com/javase/8/docs/api/java/text/SimpleDateFormat.html