date-time.asciidoc 3.6 KB

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