【发布时间】:2017-05-11 01:58:45
【问题描述】:
我正在使用 pyspark 2.0。我收到波纹管代码的酸洗错误
from pyspark.sql.types import*
from datetime import datetime
from pyspark.sql.functions import udf
def getTime():
timevalue=datetime.now()
return timevalue
spark.udf.register('Getday', getTime,TimestampType())
def datetostring_conv(datevalue):
stringvalue=datevalue.strftime('%Y-%m-%d')
print stringvalue
intstring=stringvalue[0:4]+stringvalue[5:7]+stringvalue[8:10]
return intstring
spark.udf.register('IntString',lambda(x):datetostring_conv,StringType())
当我打电话时到此为止
spark.sql("select date_add(Getday(),-1)as stringtime").show()
我将前一天的值作为日期类型,但是当我尝试将其转换为字符串时,避免使用“-”。这是 IntString 函数作业我收到酸洗错误
spark.sql("select IntString(date_add(GetDay(),1))as stringvalue").show()
我该如何解决这个错误
提前致谢
【问题讨论】:
标签: python apache-spark pyspark apache-spark-sql user-defined-functions