{
  "comment" : "This is generated by ESQL's AbstractFunctionTestCase. Do not edit it. See ../README.md for how to regenerate it.",
  "type" : "scalar",
  "name" : "date_format",
  "description" : "Returns a string representation of a date, in the provided format.",
  "signatures" : [
    {
      "params" : [
        {
          "name" : "dateFormat",
          "type" : "date",
          "optional" : true,
          "description" : "Date format (optional).  If no format is specified, the `yyyy-MM-dd'T'HH:mm:ss.SSSZ` format is used. If `null`, the function returns `null`."
        }
      ],
      "variadic" : false,
      "returnType" : "keyword"
    },
    {
      "params" : [
        {
          "name" : "dateFormat",
          "type" : "date_nanos",
          "optional" : true,
          "description" : "Date format (optional).  If no format is specified, the `yyyy-MM-dd'T'HH:mm:ss.SSSZ` format is used. If `null`, the function returns `null`."
        }
      ],
      "variadic" : false,
      "returnType" : "keyword"
    },
    {
      "params" : [
        {
          "name" : "dateFormat",
          "type" : "keyword",
          "optional" : true,
          "description" : "Date format (optional).  If no format is specified, the `yyyy-MM-dd'T'HH:mm:ss.SSSZ` format is used. If `null`, the function returns `null`."
        },
        {
          "name" : "date",
          "type" : "date",
          "optional" : false,
          "description" : "Date expression. If `null`, the function returns `null`."
        }
      ],
      "variadic" : false,
      "returnType" : "keyword"
    },
    {
      "params" : [
        {
          "name" : "dateFormat",
          "type" : "keyword",
          "optional" : true,
          "description" : "Date format (optional).  If no format is specified, the `yyyy-MM-dd'T'HH:mm:ss.SSSZ` format is used. If `null`, the function returns `null`."
        },
        {
          "name" : "date",
          "type" : "date_nanos",
          "optional" : false,
          "description" : "Date expression. If `null`, the function returns `null`."
        }
      ],
      "variadic" : false,
      "returnType" : "keyword"
    },
    {
      "params" : [
        {
          "name" : "dateFormat",
          "type" : "text",
          "optional" : true,
          "description" : "Date format (optional).  If no format is specified, the `yyyy-MM-dd'T'HH:mm:ss.SSSZ` format is used. If `null`, the function returns `null`."
        },
        {
          "name" : "date",
          "type" : "date",
          "optional" : false,
          "description" : "Date expression. If `null`, the function returns `null`."
        }
      ],
      "variadic" : false,
      "returnType" : "keyword"
    },
    {
      "params" : [
        {
          "name" : "dateFormat",
          "type" : "text",
          "optional" : true,
          "description" : "Date format (optional).  If no format is specified, the `yyyy-MM-dd'T'HH:mm:ss.SSSZ` format is used. If `null`, the function returns `null`."
        },
        {
          "name" : "date",
          "type" : "date_nanos",
          "optional" : false,
          "description" : "Date expression. If `null`, the function returns `null`."
        }
      ],
      "variadic" : false,
      "returnType" : "keyword"
    }
  ],
  "examples" : [
    "FROM employees\n| KEEP first_name, last_name, hire_date\n| EVAL hired = DATE_FORMAT(\"yyyy-MM-dd\", hire_date)"
  ],
  "preview" : false,
  "snapshot_only" : false
}
