我们在做数据分析时,有时候需要使用join等作表连接,或者说 通过一些数据作关联。
但是 如果需要的数据 是存储的一列中使用逗号分割,或者存储在数组中,就不能很方便的进行表连接。
presto提供了很方便的语法,可以把列转成多行。
场景一 字符串
person表中 多个数据保存在pets使用逗号分割
如下:
输出:
name
|
pets
|
zzq
|
summer,winter
|
ly
|
spring,autumn
|
使用sql如下:
select name,split_pet
FROM person
CROSS JOIN UNNEST(SPLIT(pets,',')) AS t (split_pet)
输出如下:
name
|
split_pet
|
zzq
|
summer
|
zzq
|
winter
|
ly
|
spring
|
ly
|
autumn
|
注意 非规范的字段串 可以使用replace进行处理成规范的字符串
如下:
场景二 数组
person表中 多个数据保存在pets使用逗号分割
如下:
输出:
name
|
pets
|
zzq
|
[summer,winter]
|
ly
|
[spring,autumn]
|
使用sql如下:
select name,split_pet
FROM person
CROSS JOIN UNNEST(pets) AS t (split_pet)
输出如下:
name
|
split_pet
|
zzq
|
summer
|
zzq
|
winter
|
ly
|
spring
|
ly
|
autumn
|
sql server 导入 decimail sql server2019导入数据
一、环境工具:VS2019项目类型:C# Windows 窗体应用(.NET Framework)框架:.NET Framework 4控件:窗体、按钮(Button)功能简述:点击按钮,选择想要导入数据库的表格,接着将表格内容导入到数据库界面:仅用一个按钮测试功能即可二、详细步骤(1)添加using 引用集using System.Data.OleDb;
using System.IO;(2)双