to_varchar

col format基于 .. 如果转换失败,将引发异常。 支持 Spark Connect。

格式可以包含以下字符,不区分大小写:

  • '0''9':指定介于 0 和 9 之间的预期数字。 格式字符串中的 0 或 9 序列与输入值中的数字序列匹配,生成与格式字符串中相应序列相同的长度的结果字符串。 如果 0/9 序列包含的数字多于十进制值的匹配部分,并且该序列以 0 开头,且位于小数点之前,那么会用零左填充此结果字符串。 否则,会用空格填充此结果字符串。
  • '.''D':指定小数点的位置(可选,只允许一次)。
  • ',''G':指定分组 (千) 分隔符 (,)的位置。 每个分组分隔符的左右两边必须有一个 0 或 9。
  • '$':指定 $ 货币符号的位置。 此字符只能指定一次。
  • 'S''MI':指定“-”或“+”符号的位置(可选,仅在格式字符串的开头或末尾只允许一次)。 请注意,“S”打印正值的“+”,但“MI”打印空格。
  • 'PR':仅在格式字符串的末尾允许;指定如果输入值为负值,则结果字符串将由尖括号包装。

如果是 col 日期/时间, format 则为有效的日期/时间模式,请参阅 模式

如果是 col 二进制文件,它将转换为格式之一的字符串:

  • 'base64':base 64 字符串。
  • 'hex':十六进制格式的字符串。
  • 'utf-8':输入二进制文件解码为 UTF-8 字符串。

有关相应的 Databricks SQL 函数,请参阅 to_varchar 函数

Syntax

from pyspark.databricks.sql import functions as dbf

dbf.to_varchar(col=<col>, format=<format>)

参数

参数 类型 Description
col pyspark.sql.Columnstr 输入列或字符串。
format pyspark.sql.Columnstr 用于转换字符值的格式。

例子

from pyspark.databricks.sql import functions as dbf
from pyspark.sql.functions import lit
df = spark.createDataFrame([(78.12,)], ['e'])
df.select(dbf.to_varchar(df.e, lit("$99.99")).alias('r')).collect()