跳到主要内容

struct:创建结构体

速查结论

struct(col1, col2, col3, ...) 是 Spark SQL 中用于使用给定的字段值自动创建结构体(字段名自动生成为 col1, col2, ...) 的函数。

语法​

struct(col1, col2, col3, ...)

参数说明​

参数类型说明
col1, col2, ...ANY结构体的字段值,可以是任意支持的数据类型。字段名将自动生成为 col1, col2, col3...

示例​

> SELECT struct(1, 2, 3);
{"col1":1,"col2":2,"col3":3}

常见报错与避坑指南​

  • 字段名自动生成(col1, col2, col3...),无法自定义。如需自定义字段名,请使用 named_struct 函数。
  • 至少需要一个参数,无参数调用 struct() 会报错。
  • struct 常用于将多列打包为单列,配合 to_json 或窗口函数进行复杂数据处理。

Since: 1.4.0

微信公众号二维码关注公众号
交流微信二维码加群交流
赞赏二维码赞赏

你可能还想看