amanomer commented on a change in pull request #26472: [SPARK-29838][SQL] PostgreSQL dialect: cast to timestamp URL: https://github.com/apache/spark/pull/26472#discussion_r347214178
########## File path: sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/postgreSQL/PostgreCastBase.scala ########## @@ -68,16 +91,47 @@ case class PostgreCastToBoolean(child: Expression, timeZoneId: Option[String]) throw new IllegalArgumentException("invalid input syntax for type boolean: $c"); } """ - case IntegerType => super.castToBooleanCode(from) } +} - override def dataType: DataType = BooleanType +case class PostgreCastToTimestamp(child: Expression, timeZoneId: Option[String]) + extends PostgreCastBase(TimestampType) { - override def nullable: Boolean = child.nullable + override def fromTypes: TypeCollection = TypeCollection(StringType, DateType, NullType) - override def toString: String = s"PostgreCastToBoolean($child as ${dataType.simpleString})" + override def withTimeZone(timeZoneId: String): TimeZoneAwareExpression = + copy(timeZoneId = Option(timeZoneId)) - override def sql: String = s"CAST(${child.sql} AS ${dataType.sql})" + override def castToTimestamp(from: DataType): Any => Any = from match { + case StringType => + buildCast[UTF8String](_, utfs => DateTimeUtils.stringToTimestamp(utfs, zoneId) Review comment: @maropu kindly review latest changes and give your feedback on supporting above queries. Do we need to support them in this PR? If yes, we need to list all formats for timestamps which postgres supports but spark don't. ---------------------------------------------------------------- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org With regards, Apache Git Services --------------------------------------------------------------------- To unsubscribe, e-mail: reviews-unsubscr...@spark.apache.org For additional commands, e-mail: reviews-h...@spark.apache.org