elasticsearch/docs/reference/esql/functions
Mark Tozzi 60ae7463a8
[ESQL] Support datetime data type in Least and Greatest functions (#113961)
While working on Date Nanos, I noticed that Least and Greatest didn't have support for datetime. This PR corrects that and adds tests for it.

It seems to me that resolveType() is doing the wrong thing for these functions, as it accepts types that then do not have evaluator mappings, but refactoring that seems out of scope right now.

---------

Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
2024-10-04 09:06:39 -04:00
..
appendix ESQL: Add COUNT and COUNT_DISTINCT aggregation tests (#111409) 2024-07-30 03:07:15 +10:00
description [ESQL] Add TO_DATE_NANOS conversion function (#112150) 2024-09-26 12:03:01 -04:00
examples ESQL: Align year diffing to the rest of the units in DATE_DIFF: chronological (#113103) 2024-09-20 20:21:29 +10:00
kibana [ESQL] Support datetime data type in Least and Greatest functions (#113961) 2024-10-04 09:06:39 -04:00
layout [ESQL] Add TO_DATE_NANOS conversion function (#112150) 2024-09-26 12:03:01 -04:00
parameters [ESQL] Add TO_DATE_NANOS conversion function (#112150) 2024-09-26 12:03:01 -04:00
signature [ESQL] Add TO_DATE_NANOS conversion function (#112150) 2024-09-26 12:03:01 -04:00
types [ESQL] Support datetime data type in Least and Greatest functions (#113961) 2024-10-04 09:06:39 -04:00
README.md ESQL: Generate kibana inline docs (#106782) 2024-04-09 14:19:48 -04:00
aggregation-functions.asciidoc ESQL: WEIGHTED_AVG aggregation tests and docs (#111449) 2024-07-31 00:42:23 +10:00
binary.asciidoc ESQL docs: Push down needs index and doc_values (#110353) 2024-07-02 14:22:50 -04:00
cast.asciidoc ESQL: Document the cast operator (::) (#107871) 2024-04-25 10:10:59 -04:00
conditional-functions-and-expressions.asciidoc [ES|QL] Add/Modify annotations for spatial and conditional functions for better doc generation (#107722) 2024-05-10 14:49:25 -04:00
date-time-functions.asciidoc ES|QL: Add unit tests for now() function (#108498) 2024-05-10 14:28:19 +02:00
grouping-functions.asciidoc ESQL: Document BUCKET as a grouping function (#107864) 2024-04-25 12:38:12 -04:00
in.asciidoc [DOCS] Examples for ES|QL DISSECT and WHERE (#102591) 2023-11-27 10:56:48 +01:00
ip-functions.asciidoc ESQL: Add aggregations testing base and docs (#110042) 2024-06-27 21:21:55 +10:00
like.asciidoc [ES|QL] Add/Modify annotations for operators for better doc generation (#108220) 2024-05-03 22:59:51 -04:00
logical.asciidoc Restructure ES|QL docs (#100806) 2023-10-17 17:36:14 +02:00
math-functions.asciidoc Add the EXP ES|QL function (#110879) 2024-07-16 16:36:01 +02:00
mv-functions.asciidoc ESQL: mv_median_absolute_deviation function (#112055) 2024-09-09 10:04:25 +02:00
operators.asciidoc Introduce an IP functions group (#108304) 2024-05-06 13:43:30 +02:00
predicates.asciidoc [DOCS] Examples for ES|QL DISSECT and WHERE (#102591) 2023-11-27 10:56:48 +01:00
rlike.asciidoc [ES|QL] Add/Modify annotations for operators for better doc generation (#108220) 2024-05-03 22:59:51 -04:00
spatial-functions.asciidoc ES|QL ST_DISTANCE Function (#108764) 2024-06-21 11:59:44 +02:00
string-functions.asciidoc [ESQL] Add `SPACE` function (#112350) 2024-09-09 21:41:35 +10:00
type-conversion-functions.asciidoc [ES|QL] explicit cast a string literal to date_period and time_duration in arithmetic operations (#109193) 2024-09-09 14:56:43 -04:00
unary.asciidoc ESQL: Add type tables for operators to docs (#103206) 2023-12-11 10:51:38 -05:00

README.md

The files in these subdirectories are generated by ESQL's test suite:

  • description - description of each function scraped from @FunctionInfo#description
  • examples - examples of each function scraped from @FunctionInfo#examples
  • parameters - description of each function's parameters scraped from @Param
  • signature - railroad diagram of the syntax to invoke each function
  • types - a table of each combination of support type for each parameter. These are generated from tests.
  • layout - a fully generated description for each function
  • kibana/definition - function definitions for kibana's ESQL editor
  • kibana/docs - the inline docs for kibana

Most functions can use the generated docs generated in the layout directory. If we need something more custom for the function we can make a file in this directory that can include:: any parts of the files above.

To regenerate the files for a function run its tests using gradle:

./gradlew :x-pack:plugin:esql:test -Dtests.class='*SinTests'

To regenerate the files for all functions run all of ESQL's tests using gradle:

./gradlew :x-pack:plugin:esql:test