date-time.asciidoc 3.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394
  1. [role="xpack"]
  2. [testenv="basic"]
  3. [[sql-functions-datetime]]
  4. === Date and Time Functions
  5. * Extract the year from a date (`YEAR`)
  6. ["source","sql",subs="attributes,callouts,macros"]
  7. --------------------------------------------------
  8. include-tagged::{sql-specs}/datetime.csv-spec[year]
  9. --------------------------------------------------
  10. * Extract the month of the year from a date (`MONTH_OF_YEAR` or `MONTH`)
  11. ["source","sql",subs="attributes,callouts,macros"]
  12. --------------------------------------------------
  13. include-tagged::{sql-specs}/datetime.csv-spec[monthOfYear]
  14. --------------------------------------------------
  15. * Extract the week of the year from a date (`WEEK_OF_YEAR` or `WEEK`)
  16. ["source","sql",subs="attributes,callouts,macros"]
  17. --------------------------------------------------
  18. include-tagged::{sql-specs}/datetime.csv-spec[weekOfYear]
  19. --------------------------------------------------
  20. * Extract the day of the year from a date (`DAY_OF_YEAR` or `DOY`)
  21. ["source","sql",subs="attributes,callouts,macros"]
  22. --------------------------------------------------
  23. include-tagged::{sql-specs}/datetime.csv-spec[dayOfYear]
  24. --------------------------------------------------
  25. * Extract the day of the month from a date (`DAY_OF_MONTH`, `DOM`, or `DAY`)
  26. ["source","sql",subs="attributes,callouts,macros"]
  27. --------------------------------------------------
  28. include-tagged::{sql-specs}/datetime.csv-spec[dayOfMonth]
  29. --------------------------------------------------
  30. * Extract the day of the week from a date (`DAY_OF_WEEK` or `DOW`).
  31. Monday is `1`, Tuesday is `2`, etc.
  32. ["source","sql",subs="attributes,callouts,macros"]
  33. --------------------------------------------------
  34. include-tagged::{sql-specs}/datetime.csv-spec[dayOfWeek]
  35. --------------------------------------------------
  36. * Extract the hour of the day from a date (`HOUR_OF_DAY` or `HOUR`).
  37. Monday is `1`, Tuesday is `2`, etc.
  38. ["source","sql",subs="attributes,callouts,macros"]
  39. --------------------------------------------------
  40. include-tagged::{sql-specs}/datetime.csv-spec[hourOfDay]
  41. --------------------------------------------------
  42. * Extract the minute of the day from a date (`MINUTE_OF_DAY`).
  43. ["source","sql",subs="attributes,callouts,macros"]
  44. --------------------------------------------------
  45. include-tagged::{sql-specs}/datetime.csv-spec[minuteOfDay]
  46. --------------------------------------------------
  47. * Extract the minute of the hour from a date (`MINUTE_OF_HOUR`, `MINUTE`).
  48. ["source","sql",subs="attributes,callouts,macros"]
  49. --------------------------------------------------
  50. include-tagged::{sql-specs}/datetime.csv-spec[minuteOfHour]
  51. --------------------------------------------------
  52. * Extract the second of the minute from a date (`SECOND_OF_MINUTE`, `SECOND`).
  53. ["source","sql",subs="attributes,callouts,macros"]
  54. --------------------------------------------------
  55. include-tagged::{sql-specs}/datetime.csv-spec[secondOfMinute]
  56. --------------------------------------------------
  57. * Extract
  58. As an alternative, one can support `EXTRACT` to extract fields from datetimes.
  59. You can run any <<sql-functions-datetime,datetime function>>
  60. with `EXTRACT(<datetime_function> FROM <expression>)`. So
  61. ["source","sql",subs="attributes,callouts,macros"]
  62. --------------------------------------------------
  63. include-tagged::{sql-specs}/datetime.csv-spec[extractDayOfYear]
  64. --------------------------------------------------
  65. is the equivalent to
  66. ["source","sql",subs="attributes,callouts,macros"]
  67. --------------------------------------------------
  68. include-tagged::{sql-specs}/datetime.csv-spec[dayOfYear]
  69. --------------------------------------------------