Sql TERADATA-如何拆分字符列并保留最后一个标记?
我有一个带有文章名称的表,我想选择表中每一篇文章的最后一个单词 现在,我正在SAS中执行此操作,我的代码如下所示:Sql TERADATA-如何拆分字符列并保留最后一个标记?,sql,substring,token,teradata,strtok,Sql,Substring,Token,Teradata,Strtok,我有一个带有文章名称的表,我想选择表中每一篇文章的最后一个单词 现在,我正在SAS中执行此操作,我的代码如下所示: PROC SQL; CREATE TABLE last_word as SELECT scan(names,-1) as last_w FROM articles; QUIT; 我知道TERADATA中的STRTOK函数,但它似乎只接受正值作为索引,在我的例子中,文章名称的字数不是恒定的。您可以使用函数REGEXP\u SUBSTR来执行此操作: CREA
PROC SQL;
CREATE TABLE last_word as
SELECT scan(names,-1) as last_w
FROM articles;
QUIT;
我知道TERADATA中的STRTOK函数,但它似乎只接受正值作为索引,在我的例子中,文章名称的字数不是恒定的。您可以使用函数
REGEXP\u SUBSTR
来执行此操作:
CREATE TABLE last_word as
SELECT REGEXP_SUBSTR(names, '[^,]+$') as last_w
FROM articles;
这里的正则表达式将获取列表的最后一个元素,其中列表以逗号分隔。什么版本的Teradata?