【Teradata SQL】字符串分割函数STRTOK和STRTOK_SPLIT_TO_TABLE

STRTOK函数:

按照指定分隔符,将字符串分割成多个部分,返回指定部分字符串。

【Teradata SQL】字符串分割函数STRTOK和STRTOK_SPLIT_TO_TABLE

参数说明:

(1)instring:字符串或字符串表达式。

(2)delimiter:分隔符列表,字符串每个字符都会做为分隔符,如果不指定则默认使用空格做分隔符。

(3)tokennum:返回分隔的第几部分,默认第一部分。

返回值:

找到则返回对应的字符串,找不到则返回NULL。

示例说明:

CREATE TABLE t (id INTEGER, str VARCHAR(256));
INSERT INTO t VALUES (1,'Teradata-Warehouse 13.10 - Combine 2 powerful forms of business intelligence (BI).');
INSERT INTO t VALUES (2,'http://www.teradata.com/');
INSERT INTO t VALUES (3,'G001|EDW-PDM-T01');
INSERT INTO t VALUES (4,'G002!EDW-PDM-T02');
SELECT id, str,STRTOK(t.str, '|!', 2) FROM t order by 1;

【Teradata SQL】字符串分割函数STRTOK和STRTOK_SPLIT_TO_TABLE

SELECT id, str,STRTOK(t.str, '/ -', 3) FROM t order by 1; //分隔符有三个,斜线、空格和横杆

【Teradata SQL】字符串分割函数STRTOK和STRTOK_SPLIT_TO_TABLE

STRTOK_SPLIT_TO_TABLE函数

按照指定分隔符,将字符串分割成多个部分,返回分割字符串列表。

【Teradata SQL】字符串分割函数STRTOK和STRTOK_SPLIT_TO_TABLE

示例:

CREATE TABLE t (id integer, str varchar(256)character set unicode);
INSERT INTO t VALUES (1,'Teradata-Warehouse 13.10 - Combine 2 powerful forms of business intelligence (BI).');
insert into t values (2,'http://www.teradata.com/');
SELECT d.* FROM TABLE (strtok_split_to_table(t.id, t.str, ' -/')
RETURNS (outkey integer, tokennum integer, token varchar(20)character set
unicode) ) as d order by 1,2;

【Teradata SQL】字符串分割函数STRTOK和STRTOK_SPLIT_TO_TABLE

上一篇:&与&问题


下一篇:oracle查看所有表的数据量并排序