调整域
为了成功地在 Analytics 中组合表,可能需要先在要组合的两个表中调整一个或多个域。
什么是协调?
协调就是使不同表中的相应域的数据结构相同 – 例如,对域的数据类型进行标准化的过程。
协调还意味着让两个相应域中的值的格式相同 – 例如,对 ID 编号中连字符的用法进行标准化。
如果相应域的结构或域中的值的格式不相同,就会得到混乱的数据,可能无法执行组合操作,或者联接或关联操作无法正确地匹配值。
使用函数和计算域来协调域
使用 Analytics 函数创建计算域是协调域的主要技巧。例如,转换函数能够将域从一种数据类型转换为另一种数据类型。其他函数可让您修改域长度、对齐方式和大小写,并且标准化域中值的格式。
根据两个域之间的差异度,可能必须使用一系列函数才能成功地调整域。
在协调域之后,您就可以使用上述任一方法组合数据:
- 联接或关联 对于公共键域,使用协调域和原始键域或者使用两个协调域。
- 附加、提取并附加或合并 创建一个或多个协调域,然后按域提取以将协调计算域转换为填充了实际计算值的物理域。在数据组合操作中将提取表与物理域结合使用。
用于协调域的 Analytics 函数
下面概述了可用于协调域的 Analytics 函数。有关使用特定函数的详细信息,请参阅 ACL 脚本指南。
Analytics 函数 |
类别 |
目的 |
---|---|---|
STRING( ) |
数据类型转换 (N 至 C) |
将数值数据转换为字符数据。 |
ZONED( ) |
将数字数据转换成字符数据(ASCII 分区数据格式),并在数据前添加前导零。 |
|
VALUE( ) |
数据类型转换 (C 至 N) |
将字符数据转换为数值数据。 |
CTOD( ) |
数据类型转换 (C 或 N 至 D) |
将字符或数字日期转换为日期数据。 |
CTODT( ) |
将字符或数字日期时间转换为日期时间数据。 |
|
CTOT( ) |
将字符或数字时间转换为时间数据。 |
|
DATE( ) |
数据类型转换 (D 至 C) |
将日期数据转换为字符数据。 |
DATETIME( ) |
将日期时间数据转换为字符数据。 |
|
TIME( ) |
将时间数据转换为字符数据。 |
|
STOD( ) |
数据类型转换 (序列 N 到 D) |
将序列日期转换为日期数据。 |
STODT( ) |
将序列日期时间转换成日期时间数据。 |
|
STOT( ) |
将序列时间转换成时间数据。 |
|
SUBSTRING( ) |
长度调整 |
提取字符串的指定部分(该部分可等同于整个现有字符串)。可用于缩短或加长域长度。如果指定的长度长于现有字符串,则会在末尾添加空格。 |
BLANKS( ) |
创建指定长度的空白字符字符串。可用于向字符数据添加前导或结尾空格。 |
|
LTRIM( ) |
长度调整/对齐 |
从字符数据中删除前导空格。 |
TRIM( ) |
从字符数据中删除结尾空格。 |
|
ALLTRIM( ) |
从字符数据中删除前导空格和结尾空格。 |
|
RJUSTIFY( ) |
向右对齐字符数据,将所有前导空格转换为结尾空格。 |
|
UPPER( ) |
大小写转换 |
将字母字符转换为大写。 |
LOWER( ) |
将字母字符转换为小写。 |
|
PROPER( ) |
将每个单词的首个字符转换为大写,单词的其余字符转换为小写。 |
|
INCLUDE( ) |
格式修改 |
从字符串提取指定字符。 例如,可只从字母数字数据中提取数字。 |
REMOVE( ) |
从字符串提取指定的字符,并通过添加结尾空格保持原始字符串长度。 |
|
EXCLUDE( ) |
从字符串删除指定字符。 例如,可以从字母数字数据删除数字,或从“123-45-4536”删除连字符并输出字符串“123454536”。 |
|
OMIT( ) |
从字符串中删除指定的字符或子串。 例如,您可以从供应商名称中删除“Corporation”、“Inc.”或“Ltd.”。 |
|
INSERT( ) |
将指定字符插入字符串。 例如,可以在“123454536”中插入连字符,从而输出字符串“123-45-4536”。 |
|
SPLIT( ) |
根据分隔符(例如空格或逗号)将字符数据分割为数个段,并提取指定的段。 |
|
CLEAN( ) |
从字符串删除制表符和回车符等无效字符、其他任何指定字符并删除所有后续字符,并用空格替代删除的字符。 |
|
REPLACE( ) |
用新字符串替代现有字符串的每个实例。例如,可用“Road”替代“Rd”。 |
|
DEC( ) |
指定数值域中的小数位数。 |