拆分与连接文本

SQL 中的探索性数据分析

Christina Maimone

Data Scientist

子串

SELECT left('abcde', 2),   -- first 2 characters
       right('abcde', 2);  -- last 2 characters
 left | right 
------+-------
 ab   | de
SELECT left('abc', 10), 
       length(left('abc', 10));
 left | length 
------+--------
 abc  |      3
SQL 中的探索性数据分析

子串

SELECT substring(string FROM start FOR length);
SELECT substring('abcdef' FROM 2 FOR 3);
bcd
SELECT substr('abcdef', 2, 3);
SQL 中的探索性数据分析

分隔符

some text,more text,still more text
         ^         ^
     delimiter  delimiter

字段/片段:

  1. some text
  2. more text
  3. still more text
SQL 中的探索性数据分析

按分隔符拆分

SELECT split_part(string, delimiter, part);
SELECT split_part('a,bc,d', ',', 2);
bc
SQL 中的探索性数据分析

按分隔符拆分

SELECT split_part('cats and dogs and fish', ' and ', 1);
cats
SQL 中的探索性数据分析

连接文本

SELECT concat('a', 2, 'cc');
a2cc
SELECT 'a' || 2 || 'cc';
a2cc
SELECT concat('a', NULL, 'cc');
acc
SELECT 'a' || NULL || 'cc';


SQL 中的探索性数据分析

练习一些字符串!

SQL 中的探索性数据分析

Preparing Video For Download...