Snippet Name: Detect Leap Year Description: Detect leap years (useful for calendar functions, scheduling, etc). Also see:» FUNCTIONS: date/time » UPDATE: Update a partitioned table » UPDATE: Update based on a record » UPDATE: Update Object Table » UPDATE: with RETURNING clause » UPDATE: Nested Table Update example » UPDATE: Correlated Update » UPDATE: Update from a SELECT statement » UPDATE: based on multiple returned val... » UPDATE: Update based on a query » UPDATE: Update multiple rows » UPDATE: update a specific record » UPDATE: Single row » Date Functions: EXTRACT » Date Functions: TO_DSINTERVAL » Date Functions: TO_NCHAR » Date Functions: TO_YMINTERVAL » Date Functions: Calculate elapsed time... » Date and Time Calculations: Get second... » Date: Find first day of the month » Date Calculations » Date Functions: WHERE Clause Joins » Date Functions: TRUNC » Date Functions: SYSDATE » Date Functions: TO_CHAR » Date Functions: ROUND » Date Functions: NEXT_DAY » Date Functions: NEW_TIME » Date Functions: MONTHS_BETWEEN » Date Functions: MIN Comment: (none) Language: PL/SQL Highlight Mode: PLSQL Last Modified: March 03rd, 2009
Description: Detect leap years (useful for calendar functions, scheduling, etc).
Also see:» FUNCTIONS: date/time » UPDATE: Update a partitioned table » UPDATE: Update based on a record » UPDATE: Update Object Table » UPDATE: with RETURNING clause » UPDATE: Nested Table Update example » UPDATE: Correlated Update » UPDATE: Update from a SELECT statement » UPDATE: based on multiple returned val... » UPDATE: Update based on a query » UPDATE: Update multiple rows » UPDATE: update a specific record » UPDATE: Single row » Date Functions: EXTRACT » Date Functions: TO_DSINTERVAL » Date Functions: TO_NCHAR » Date Functions: TO_YMINTERVAL » Date Functions: Calculate elapsed time... » Date and Time Calculations: Get second... » Date: Find first day of the month » Date Calculations » Date Functions: WHERE Clause Joins » Date Functions: TRUNC » Date Functions: SYSDATE » Date Functions: TO_CHAR » Date Functions: ROUND » Date Functions: NEXT_DAY » Date Functions: NEW_TIME » Date Functions: MONTHS_BETWEEN » Date Functions: MIN
SELECT YEAR, DECODE( MOD(YEAR, 4), 0, DECODE( MOD(YEAR, 400), 0, 'Leap Year', DECODE( MOD(YEAR, 100), 0, 'This is not a Leap Year', 'This is a Leap Year') ), 'This is not a Leap Year' ) AS leap_year_indicator FROM my_table /