sparksql substring截取年月份
时间: 2023-08-09 07:09:27 浏览: 182
字符串截取
在 Spark SQL 中,你可以使用内置的函数 `substring` 来截取年月份。假设你有一个包含日期的列 `date_column`,你可以使用以下方式截取年份和月份:
```scala
import org.apache.spark.sql.functions._
// 创建一个示例 DataFrame
val df = Seq(("2022-09-15"), ("2023-03-20")).toDF("date_column")
// 使用 substring 函数截取年份和月份
val result = df.select(
substring(col("date_column"), 1, 4).alias("year"),
substring(col("date_column"), 6, 2).alias("month")
)
result.show()
```
这样,你将得到一个新的 DataFrame `result`,其中包含了截取的年份和月份。在示例中,输出结果将为:
```
+----+-----+
|year|month|
+----+-----+
|2022| 09|
|2023| 03|
+----+-----+
```
使用 `substring` 函数时,第一个参数为要截取的列,第二个参数为起始位置(从1开始),第三个参数为截取的长度。注意,起始位置和长度都是基于字符位置而不是索引。
阅读全文