我在S3存储桶中有S3广告资源详细信息,并且正在通过雅典娜查询。
我的前两列如下所示:
bucket key
bke-p0d-bke-lca-data dl/xxxxxx/plant/archive/01-01-2019/1546300856.json
bke-pod-bke-lca-data dl/xxxx/plant/archive/01-01-2019/1546300856.json
bke-pod-bke-lca-data dl/xxx/plant/archive/01-01-2019/1546300856.json
我需要他们将关键信息拆分到下面:
bucket Categ Type Date File
bke-pod-bke-lca-data xxxxxx archive 01/01/2019 1546300856.json
bke-pod-bke-lca-data xxxx working 01/01/2019 1546300856.json
bke-pod-bke-lca-data xxx archive 01/01/2019 1546300856.json
我尝试substr
无效。
如何根据/
进行拆分?
答案 0 :(得分:1)
6.8. String Functions and Operators — Presto 0.172 Documentation具有:
split_part(string, delimiter, index)
在string
上分割delimiter
并返回字段index
。字段索引以1
开头。如果索引大于字段数,则返回null。
因此,您应该可以使用类似这样的内容:
SELECT
bucket,
split_part(key, '/', 2) as category,
split_part(key, '/', 4) as type,
split_part(key, '/', 5) as date,
split_part(key, '/', 6) as file