Skip to content

Commit

Permalink
[MINOR][SQL][DOCS] Improve unix_timestamp's scaladoc (and typo hunting)
Browse files Browse the repository at this point in the history
## What changes were proposed in this pull request?

* Docs are consistent (across different `unix_timestamp` variants and their internal expressions)
* typo hunting

## How was this patch tested?

local build

Author: Jacek Laskowski <jacek@japila.pl>

Closes #17801 from jaceklaskowski/unix_timestamp.
  • Loading branch information
jaceklaskowski authored and gatorsmile committed May 7, 2017
1 parent 7087e01 commit 500436b
Show file tree
Hide file tree
Showing 3 changed files with 21 additions and 13 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -488,7 +488,7 @@ case class DateFormatClass(left: Expression, right: Expression, timeZoneId: Opti
* Deterministic version of [[UnixTimestamp]], must have at least one parameter.
*/
@ExpressionDescription(
usage = "_FUNC_(expr[, pattern]) - Returns the UNIX timestamp of the give time.",
usage = "_FUNC_(expr[, pattern]) - Returns the UNIX timestamp of the given time.",
extended = """
Examples:
> SELECT _FUNC_('2016-04-08', 'yyyy-MM-dd');
Expand Down Expand Up @@ -1225,8 +1225,8 @@ case class ParseToTimestamp(left: Expression, format: Expression, child: Express
extends RuntimeReplaceable {

def this(left: Expression, format: Expression) = {
this(left, format, Cast(UnixTimestamp(left, format), TimestampType))
}
this(left, format, Cast(UnixTimestamp(left, format), TimestampType))
}

override def flatArguments: Iterator[Any] = Iterator(left, format)
override def sql: String = s"$prettyName(${left.sql}, ${format.sql})"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -423,7 +423,7 @@ object DateTimeUtils {
}

/**
* Parses a given UTF8 date string to the corresponding a corresponding [[Int]] value.
* Parses a given UTF8 date string to a corresponding [[Int]] value.
* The return type is [[Option]] in order to distinguish between 0 and null. The following
* formats are allowed:
*
Expand Down
26 changes: 17 additions & 9 deletions sql/core/src/main/scala/org/apache/spark/sql/functions.scala
Original file line number Diff line number Diff line change
Expand Up @@ -2491,10 +2491,10 @@ object functions {
* Converts a date/timestamp/string to a value of string in the format specified by the date
* format given by the second argument.
*
* A pattern could be for instance `dd.MM.yyyy` and could return a string like '18.03.1993'. All
* pattern letters of `java.text.SimpleDateFormat` can be used.
* A pattern `dd.MM.yyyy` would return a string like `18.03.1993`.
* All pattern letters of `java.text.SimpleDateFormat` can be used.
*
* @note Use when ever possible specialized functions like [[year]]. These benefit from a
* @note Use specialized functions like [[year]] whenever possible as they benefit from a
* specialized implementation.
*
* @group datetime_funcs
Expand Down Expand Up @@ -2647,7 +2647,11 @@ object functions {
}

/**
* Gets current Unix timestamp in seconds.
* Returns the current Unix timestamp (in seconds).
*
* @note All calls of `unix_timestamp` within the same query return the same value
* (i.e. the current timestamp is calculated at the start of query evaluation).
*
* @group datetime_funcs
* @since 1.5.0
*/
Expand All @@ -2657,7 +2661,9 @@ object functions {

/**
* Converts time string in format yyyy-MM-dd HH:mm:ss to Unix timestamp (in seconds),
* using the default timezone and the default locale, return null if fail.
* using the default timezone and the default locale.
* Returns `null` if fails.
*
* @group datetime_funcs
* @since 1.5.0
*/
Expand All @@ -2666,13 +2672,15 @@ object functions {
}

/**
* Convert time string with given pattern
* (see [http://docs.oracle.com/javase/tutorial/i18n/format/simpleDateFormat.html])
* to Unix time stamp (in seconds), return null if fail.
* Converts time string with given pattern to Unix timestamp (in seconds).
* Returns `null` if fails.
*
* @see <a href="http://docs.oracle.com/javase/tutorial/i18n/format/simpleDateFormat.html">
* Customizing Formats</a>
* @group datetime_funcs
* @since 1.5.0
*/
def unix_timestamp(s: Column, p: String): Column = withExpr {UnixTimestamp(s.expr, Literal(p)) }
def unix_timestamp(s: Column, p: String): Column = withExpr { UnixTimestamp(s.expr, Literal(p)) }

/**
* Convert time string to a Unix timestamp (in seconds).
Expand Down

0 comments on commit 500436b

Please sign in to comment.