{
  "$schema": "/products/haybarn/functions/api/v1/function.schema.json",
  "schemaVersion": 1,
  "name": "array_zip",
  "schema": "main",
  "slug": "array_zip",
  "description": "Zips k LISTs to a new LIST whose length will be that of the longest list. Its elements are structs of k elements from each list list_1, …, list_k, missing elements are replaced with NULL. If truncate is set, all lists are truncated to the smallest list length.",
  "category": "lists",
  "kinds": [
    "scalar"
  ],
  "aliasOf": [
    "list_zip"
  ],
  "snapshot": {
    "schemaVersion": 1,
    "id": "duckdb-1.3.2",
    "engine": "duckdb",
    "label": "DuckDB 1.3.2",
    "engineVersion": "v1.3.2",
    "sourceId": "0b83e5d2f6",
    "source": "https://github.com/duckdb/duckdb/releases/tag/v1.3.2",
    "binarySha256": "9a2ae2a4d5dbd07a5b0cb30c502d65014825d34924c681eb3faa7647e7cd2b6f",
    "capturedAt": "2026-09-05T18:37:33.818Z",
    "requestedExtensions": [
      "core_functions",
      "icu",
      "json",
      "parquet"
    ],
    "loadedExtensions": [
      {
        "extension_name": "autocomplete",
        "extension_version": "v1.3.2",
        "installed_from": ""
      },
      {
        "extension_name": "core_functions",
        "extension_version": "v1.3.2",
        "installed_from": ""
      },
      {
        "extension_name": "icu",
        "extension_version": "v1.3.2",
        "installed_from": ""
      },
      {
        "extension_name": "json",
        "extension_version": "v1.3.2",
        "installed_from": ""
      },
      {
        "extension_name": "parquet",
        "extension_version": "v1.3.2",
        "installed_from": ""
      },
      {
        "extension_name": "shell",
        "extension_version": "v1.3.2",
        "installed_from": ""
      }
    ],
    "scope": "Built-in functions in the main schema, with the requested extensions loaded. Catalog visibility is not a guarantee of browser support."
  },
  "links": {
    "html": "/products/haybarn/functions/releases/duckdb-1.3.2/array_zip/",
    "markdown": "/products/haybarn/functions/releases/duckdb-1.3.2/array_zip/index.md",
    "json": "/products/haybarn/functions/api/v1/duckdb-1.3.2/functions/array_zip.json"
  },
  "interpretation": [
    "Choose a snapshot matching the target engine and build. The default is captured from the published Haybarn WASM package used by the browser playground. Historical native snapshots are also available.",
    "Availability is an observation in the recorded build and extension profile, not a guarantee of support in every installation or in WASM.",
    "Types and descriptions are declarations from duckdb_functions(). Binding can specialize result types. Null means not supplied by the catalog; do not invent defaults, optionality, argument mode, or table output columns.",
    "Raw parameter arrays preserve catalog order for scalar/aggregate/macro functions. Raw table arguments are alphabetical. Use callingConvention for engine-confirmed positional order and named arguments; null modes are unrecorded. Named does not mean optional. Macro defaults and special named variadic behavior are not supplied by duckdb_functions().",
    "Catalog examples are source material and may require data or extensions. runnableExamples contains separately verified SQL for the pinned WASM package; sample-data adaptations and guide examples are labeled separately.",
    "Guide annotations and recipes are separate editorial content. The browser runner always uses Haybarn WASM 1.5.5-rc3, independently of the documentation snapshot.",
    "All URLs beginning with / are relative to the origin hosting this document. Exports require no JavaScript, cookies, API key, or browser engine."
  ],
  "overloads": [
    {
      "id": "overload-956a377ed761df41",
      "url": "/products/haybarn/functions/releases/duckdb-1.3.2/array_zip/#overload-956a377ed761df41",
      "signature": "array_zip(…: ANY) → STRUCT[]",
      "parameterOrder": "catalog-order",
      "callingConvention": {
        "source": null,
        "parameters": [],
        "positional": null,
        "named": null,
        "variadic": {
          "type": "ANY",
          "minimumCount": null,
          "maximumCount": null,
          "namedArgumentMode": null
        },
        "evidence": null
      },
      "syntax": {
        "kind": "function",
        "operator": null
      },
      "catalog": {
        "schema_name": "main",
        "function_name": "array_zip",
        "function_type": "scalar",
        "description": "Zips k LISTs to a new LIST whose length will be that of the longest list. Its elements are structs of k elements from each list list_1, …, list_k, missing elements are replaced with NULL. If truncate is set, all lists are truncated to the smallest list length.",
        "comment": null,
        "return_type": "STRUCT[]",
        "parameters": [],
        "parameter_types": [],
        "varargs": "ANY",
        "macro_definition": null,
        "has_side_effects": false,
        "internal": true,
        "examples": [
          "list_zip([1, 2], [3, 4], [5, 6])"
        ],
        "stability": "CONSISTENT",
        "categories": [],
        "alias_of": "list_zip"
      }
    }
  ],
  "editorial": {
    "argumentNotes": [],
    "recipes": []
  },
  "examples": [
    {
      "original": "list_zip([1, 2], [3, 4], [5, 6])",
      "sql": "SELECT list_zip([1, 2], [3, 4], [5, 6]);",
      "overloadIds": [
        "overload-956a377ed761df41"
      ],
      "source": "engine-catalog",
      "verification": null
    }
  ],
  "translations": [],
  "runnableExamples": [
    {
      "function": "array_zip",
      "original": "array_zip([1, 2], [3, 4], [5, 6])",
      "sql": "SELECT array_zip([1, 2], [3, 4], [5, 6]);",
      "source": "engine-catalog",
      "verification": {
        "engine": "haybarn-wasm",
        "packageVersion": "1.5.5-rc3",
        "sourceId": "105edd31b5",
        "binarySha256": "426638bc374fcc542fea93b251f885bfb7d221c68fcc0a5a81cc565d7e6ca180",
        "rowCount": 1
      }
    },
    {
      "function": "array_zip",
      "original": "array_zip([1, 2], [3, 4], [5, 6, 7])",
      "sql": "SELECT array_zip([1, 2], [3, 4], [5, 6, 7]);",
      "source": "engine-catalog",
      "verification": {
        "engine": "haybarn-wasm",
        "packageVersion": "1.5.5-rc3",
        "sourceId": "105edd31b5",
        "binarySha256": "426638bc374fcc542fea93b251f885bfb7d221c68fcc0a5a81cc565d7e6ca180",
        "rowCount": 1
      }
    },
    {
      "function": "array_zip",
      "original": "array_zip([1, 2], [3, 4], [5, 6, 7], true)",
      "sql": "SELECT array_zip([1, 2], [3, 4], [5, 6, 7], true);",
      "source": "engine-catalog",
      "verification": {
        "engine": "haybarn-wasm",
        "packageVersion": "1.5.5-rc3",
        "sourceId": "105edd31b5",
        "binarySha256": "426638bc374fcc542fea93b251f885bfb7d221c68fcc0a5a81cc565d7e6ca180",
        "rowCount": 1
      }
    }
  ],
  "additionalDocumentation": [
    {
      "title": "List Functions",
      "url": "https://duckdb.org/docs/current/sql/functions/list"
    }
  ],
  "availability": [
    {
      "snapshot": "haybarn-1.5.5-rc3",
      "observed": true,
      "overloadCount": 1,
      "matchingOverloadIds": [
        "overload-956a377ed761df41"
      ],
      "json": "/products/haybarn/functions/api/v1/haybarn-1.5.5-rc3/functions/array_zip.json"
    },
    {
      "snapshot": "duckdb-1.5.5",
      "observed": true,
      "overloadCount": 1,
      "matchingOverloadIds": [
        "overload-956a377ed761df41"
      ],
      "json": "/products/haybarn/functions/api/v1/duckdb-1.5.5/functions/array_zip.json"
    },
    {
      "snapshot": "duckdb-1.4.4",
      "observed": true,
      "overloadCount": 1,
      "matchingOverloadIds": [
        "overload-956a377ed761df41"
      ],
      "json": "/products/haybarn/functions/api/v1/duckdb-1.4.4/functions/array_zip.json"
    },
    {
      "snapshot": "duckdb-1.3.2",
      "observed": true,
      "overloadCount": 1,
      "matchingOverloadIds": [
        "overload-956a377ed761df41"
      ],
      "json": "/products/haybarn/functions/api/v1/duckdb-1.3.2/functions/array_zip.json"
    }
  ]
}
