> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://help.sigmacomputing.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://help.sigmacomputing.com/_mcp/server.

# CallVariant

> Use the Sigma CallVariant function to call a warehouse function that returns a Variant datatype.

The **CallVariant** function calls a warehouse function that returns a Variant datatype. This function can be used in the case of string tokenization for cleaning unstructured text data.

**CallVariant** is a passthrough function.

The functions that can be used with a passthrough function depend on your connected data platform's native SQL functions. For example, on Snowflake connections, browse the [Snowflake SQL function reference](https://docs.snowflake.com/en/sql-reference-functions) to find functions that return a value that matches the datatype of the passthrough function.

With **CallVariant**, you can use a function that returns variant data.

> **Info**
>
> This function isn't compatible with all data platform connections. To check if your connection supports it, see [Supported data platforms and feature compatibility](/docs/region-warehouse-and-feature-support#supported-data-platforms-and-feature-compatibility).

## Syntax

```sigma
CallVariant(function name, argument1, argument2, ...)
```

Function arguments:

* **function name** (required): The name of the warehouse function to call.
* **argument** (required): The argument(s) to pass into the warehouse function. Multiple arguments are supported.

## Example

A table contains a *Product Name* column that returns product information as a string. You can pass Snowflake's [STRTOK\_TO\_ARRAY](https://docs.snowflake.com/en/sql-reference/functions/strtok_to_array) function to the **CallVariant** function to tokenize the *Product Name* string by a delimiter and return the tokens in an array.

```sigma
CallVariant("STRTOK_TO_ARRAY", [Product Name], "-")
```

* Returns an array that splits *Product Name* into Product ID, Name, and Color tokens

![](https://fdr-prod-docs-files-public.s3.us-east-1.amazonaws.com/sigma.docs.buildwithfern.com/0d21f182021009748d0d793328a75103c462b4eba36f38d0c59d952590d29d60/assets/docs-images/eefc5a0-8.png?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Content-Sha256=UNSIGNED-PAYLOAD&X-Amz-Credential=AKIA6KXJSKKNFOCF7G4B%2F20261007%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20261007T054953Z&X-Amz-Expires=604800&X-Amz-Signature=f71f498a14b115db02b7b6d9d19d6ea6f2f5672882c45b0c499c20cdcbabe921&X-Amz-SignedHeaders=host&x-amz-checksum-mode=ENABLED&x-id=GetObject)

You can use the *CallVariant* column to extract the desired fields for each product into their individual columns for further analysis.

## Related resources

* [CallLogical](/docs/calllogical)
* [CallNumber](/docs/callnumber)
* [CallText](/docs/calltext)
* [CallDatetime](/docs/calldatetime)