YEAR

The YEAR function returns the year part of a value.

Read syntax diagramSkip visual syntax diagram
>>-YEAR--(--expression--)--------------------------------------><

expression
An expression that returns a value of one of the following built-in data types: a date, a timestamp, a character string, a graphic string, or a numeric data type.
  • If expression is a character or graphic string, it must not be a CLOB or DBCLOB, and its value must be a valid string representation of a date or timestamp. For the valid formats of string representations of dates and timestamps, see String representations of datetime values.
  • If expression is a number, it must be a date duration or timestamp duration. For the valid formats of datetime durations, see Datetime operands and durations.

The result of the function is a large integer. If the argument can be null, the result can be null; if the argument is null, the result is the null value.

The other rules depend on the data type of the argument:

  • If the argument is a date or a timestamp or a valid character-string representation of a date or timestamp:

    The result is the year part of the value, which is an integer between 1 and 9999.

  • If the argument is a date duration or timestamp duration:

    The result is the year part of the value, which is an integer between -9999 and 9999. A nonzero result has the same sign as the argument.

Examples

  • Select all the projects in the PROJECT table that are scheduled to start (PRSTDATE) and end (PRENDATE) in the same calendar year.
      SELECT *
        FROM PROJECT
        WHERE YEAR(PRSTDATE) = YEAR(PRENDATE)
  • Select all the projects in the PROJECT table that are scheduled to take less than one year to complete.
      SELECT *
        FROM PROJECT
        WHERE YEAR(PRENDATE - PRSTDATE) < 1