Skip to main content

Supported BigQuery functions in dbt Fusion

Fusion can validate that your BigQuery function arguments match expected types directly in dbt platform, the CLI, or using the dbt VS Code extension. To enable this, run dbt login and set static_analysis: strict in your project configuration.

The following table lists every BigQuery built-in function and its typechecking support status. Use the table's search and filters to find specific functions.

Refreshed weekly

This table is updated weekly from the BigQuery SQL function reference and cross-referenced with Fusion's support list. If you spot a discrepancy, we'd love for you to contribute and open an issue in the dbt Core repository!

Function
CategoryFusion typechecking
ABSBuilt-in✓
ACOSBuilt-in✓
ACOSHBuilt-in✓
AEAD.DECRYPT_BYTESBuilt-in✓
AEAD.DECRYPT_STRINGBuilt-in✓
AEAD.ENCRYPTBuilt-in✓
AGGBuilt-in—
ANY_VALUEBuilt-in✓
APPENDSBuilt-in—
APPROX_COUNT_DISTINCTBuilt-in✓
APPROX_QUANTILESBuilt-in✓
APPROX_TOP_COUNTBuilt-in✓
APPROX_TOP_SUMBuilt-in✓
ARRAYBuilt-in—
ARRAY_AGGBuilt-in✓
ARRAY_CONCATBuilt-in✓
ARRAY_CONCAT_AGGBuilt-in✓
ARRAY_FIRSTBuilt-in✓
ARRAY_LASTBuilt-in✓
ARRAY_LENGTHBuilt-in✓
ARRAY_REVERSEBuilt-in✓
ARRAY_SLICEBuilt-in✓
ARRAY_TO_STRINGBuilt-in✓
ASCIIBuilt-in✓
ASINBuilt-in✓
ASINHBuilt-in✓
ATANBuilt-in✓
ATAN2Built-in✓
ATANHBuilt-in✓
AVGBuilt-in✓
AVG (Differential Privacy)Built-in✓
BAG_OF_WORDSBuilt-in—
BIT_ANDBuilt-in✓
BIT_COUNTBuilt-in✓
BIT_ORBuilt-in✓
BIT_XORBuilt-in✓
BOOLBuilt-in✓
BYTE_LENGTHBuilt-in✓
CASTBuilt-in—
CBRTBuilt-in✓
CEILBuilt-in✓
CEILINGBuilt-in—
CHANGESBuilt-in—
CHAR_LENGTHBuilt-in✓
CHARACTER_LENGTHBuilt-in✓
CHRBuilt-in✓
CODE_POINTS_TO_BYTESBuilt-in✓
CODE_POINTS_TO_STRINGBuilt-in✓
COLLATEBuilt-in✓
CONCATBuilt-in✓
CONTAINS_SUBSTRBuilt-in✓
CORRBuilt-in✓
COSBuilt-in✓
COSHBuilt-in✓
COSINE_DISTANCEBuilt-in—
COTBuilt-in✓
COTHBuilt-in✓
COUNTBuilt-in✓
COUNT (Differential Privacy)Built-in✓
COUNTIFBuilt-in✓
COVAR_POPBuilt-in✓
COVAR_SAMPBuilt-in✓
CSCBuilt-in✓
CSCHBuilt-in✓
CUME_DISTBuilt-in✓
CURRENT_DATEBuilt-in✓
CURRENT_DATETIMEBuilt-in✓
CURRENT_TIMEBuilt-in✓
CURRENT_TIMESTAMPBuilt-in✓
DATEBuilt-in✓
DATE_ADDBuilt-in✓
DATE_BUCKETBuilt-in—
DATE_DIFFBuilt-in✓
DATE_FROM_UNIX_DATEBuilt-in✓
DATE_SUBBuilt-in✓
DATE_TRUNCBuilt-in✓
DATETIMEBuilt-in✓
DATETIME_ADDBuilt-in✓
DATETIME_BUCKETBuilt-in—
DATETIME_DIFFBuilt-in✓
DATETIME_SUBBuilt-in✓
DATETIME_TRUNCBuilt-in✓
DENSE_RANKBuilt-in✓
DESTINATION_NODE_IDBuilt-in—
DETERMINISTIC_DECRYPT_BYTESBuilt-in✓
DETERMINISTIC_DECRYPT_STRINGBuilt-in✓
DETERMINISTIC_ENCRYPTBuilt-in✓
DIVBuilt-in✓
DLP_DETERMINISTIC_DECRYPTBuilt-in—
DLP_DETERMINISTIC_ENCRYPTBuilt-in—
DLP_KEY_CHAINBuilt-in—
EDGESBuilt-in—
EDIT_DISTANCEBuilt-in✓
ELEMENT_IDBuilt-in—
ENDS_WITHBuilt-in✓
ERRORBuilt-in✓
EUCLIDEAN_DISTANCEBuilt-in—
EXPBuilt-in✓
EXTERNAL_OBJECT_TRANSFORMBuilt-in—
EXTERNAL_QUERYBuilt-in✓
EXTRACT (Date)Built-in—
EXTRACT (Datetime)Built-in—
EXTRACT (Interval)Built-in—
EXTRACT (Time)Built-in—
EXTRACT (Timestamp)Built-in—
FARM_FINGERPRINTBuilt-in✓
FIRST_VALUEBuilt-in✓
FLOAT64Built-in✓
FLOORBuilt-in✓
FORMATBuilt-in✓
FORMAT_DATEBuilt-in✓
FORMAT_DATETIMEBuilt-in✓
FORMAT_TIMEBuilt-in✓
FORMAT_TIMESTAMPBuilt-in✓
FROM_BASE32Built-in✓
FROM_BASE64Built-in✓
FROM_HEXBuilt-in✓
GAP_FILLBuilt-in✓
GENERATE_ARRAYBuilt-in✓
GENERATE_DATE_ARRAYBuilt-in✓
GENERATE_RANGE_ARRAYBuilt-in—
GENERATE_TIMESTAMP_ARRAYBuilt-in✓
GENERATE_UUIDBuilt-in✓
GREATESTBuilt-in✓
GROUPINGBuilt-in✓
HLL_COUNT.EXTRACTBuilt-in✓
HLL_COUNT.INITBuilt-in✓
HLL_COUNT.MERGEBuilt-in✓
HLL_COUNT.MERGE_PARTIALBuilt-in✓
IEEE_DIVIDEBuilt-in✓
INITCAPBuilt-in✓
INSTRBuilt-in✓
INT64Built-in✓
IS_INFBuilt-in✓
IS_NANBuilt-in✓
JSON_ARRAYBuilt-in✓
JSON_ARRAY_APPENDBuilt-in✓
JSON_ARRAY_INSERTBuilt-in✓
JSON_EXTRACTBuilt-in—
JSON_EXTRACT_ARRAYBuilt-in✓
JSON_EXTRACT_SCALARBuilt-in✓
JSON_EXTRACT_STRING_ARRAYBuilt-in✓
JSON_FLATTENBuilt-in✓
JSON_KEYSBuilt-in✓
JSON_OBJECTBuilt-in✓
JSON_QUERYBuilt-in✓
JSON_QUERY_ARRAYBuilt-in✓
JSON_REMOVEBuilt-in✓
JSON_SETBuilt-in✓
JSON_STRIP_NULLSBuilt-in✓
JSON_TYPEBuilt-in✓
JSON_VALUEBuilt-in✓
JSON_VALUE_ARRAYBuilt-in✓
JUSTIFY_DAYSBuilt-in✓
JUSTIFY_HOURSBuilt-in✓
JUSTIFY_INTERVALBuilt-in✓
KEYS.ADD_KEY_FROM_RAW_BYTESBuilt-in✓
KEYS.KEYSET_CHAINBuilt-in✓
KEYS.KEYSET_FROM_JSONBuilt-in✓
KEYS.KEYSET_LENGTHBuilt-in✓
KEYS.KEYSET_TO_JSONBuilt-in✓
KEYS.NEW_KEYSETBuilt-in✓
KEYS.NEW_WRAPPED_KEYSETBuilt-in✓
KEYS.REWRAP_KEYSETBuilt-in✓
KEYS.ROTATE_KEYSETBuilt-in✓
KEYS.ROTATE_WRAPPED_KEYSETBuilt-in✓
KLL_QUANTILES.EXTRACT_FLOAT64Built-in—
KLL_QUANTILES.EXTRACT_INT64Built-in—
KLL_QUANTILES.EXTRACT_POINT_FLOAT64Built-in—
KLL_QUANTILES.EXTRACT_POINT_INT64Built-in—
KLL_QUANTILES.INIT_FLOAT64Built-in—
KLL_QUANTILES.INIT_INT64Built-in—
KLL_QUANTILES.MERGE_FLOAT64Built-in—
KLL_QUANTILES.MERGE_INT64Built-in—
KLL_QUANTILES.MERGE_PARTIALBuilt-in—
KLL_QUANTILES.MERGE_POINT_FLOAT64Built-in—
KLL_QUANTILES.MERGE_POINT_INT64Built-in—
LABELSBuilt-in—
LAGBuilt-in✓
LAST_DAY (Date)Built-in✓
LAST_DAY (Datetime)Built-in✓
LAST_VALUEBuilt-in✓
LAX_BOOLBuilt-in✓
LAX_FLOAT64Built-in✓
LAX_INT64Built-in✓
LAX_STRINGBuilt-in✓
LEADBuilt-in✓
LEASTBuilt-in✓
LEFTBuilt-in✓
LENGTHBuilt-in✓
LNBuilt-in✓
LOGBuilt-in✓
LOG10Built-in✓
LOGICAL_ANDBuilt-in✓
LOGICAL_ORBuilt-in✓
LOWERBuilt-in✓
LPADBuilt-in✓
LTRIMBuilt-in✓
MAKE_INTERVALBuilt-in✓
MAXBuilt-in✓
MAX_BYBuilt-in✓
MD5Built-in✓
MINBuilt-in✓
MIN_BYBuilt-in✓
MODBuilt-in✓
NET.HOSTBuilt-in✓
NET.IP_FROM_STRINGBuilt-in✓
NET.IP_NET_MASKBuilt-in✓
NET.IP_TO_STRINGBuilt-in✓
NET.IP_TRUNCBuilt-in✓
NET.IPV4_FROM_INT64Built-in✓
NET.IPV4_TO_INT64Built-in✓
NET.PUBLIC_SUFFIXBuilt-in✓
NET.REG_DOMAINBuilt-in✓
NET.SAFE_IP_FROM_STRINGBuilt-in✓
NODESBuilt-in—
NORMALIZEBuilt-in—
NORMALIZE_AND_CASEFOLDBuilt-in✓
NTH_VALUEBuilt-in✓
NTILEBuilt-in✓
OBJ.FETCH_METADATABuilt-in—
OBJ.GET_ACCESS_URLBuilt-in—
OBJ.GET_READ_URLBuilt-in—
OBJ.MAKE_REFBuilt-in—
OCTET_LENGTHBuilt-in✓
PARSE_BIGNUMERICBuilt-in✓
PARSE_DATEBuilt-in✓
PARSE_DATETIMEBuilt-in✓
PARSE_JSONBuilt-in✓
PARSE_NUMERICBuilt-in✓
PARSE_TIMEBuilt-in✓
PARSE_TIMESTAMPBuilt-in✓
PATH_FIRSTBuilt-in—
PATH_LASTBuilt-in—
PATH_LENGTHBuilt-in—
PERCENT_RANKBuilt-in✓
PERCENTILE_CONT (Differential Privacy)Built-in✓
PERCENTILE_CONT (Navigation)Built-in✓
PERCENTILE_DISCBuilt-in✓
POWBuilt-in✓
POWERBuilt-in✓
RANDBuilt-in✓
RANGEBuilt-in—
RANGE_BUCKETBuilt-in✓
RANGE_CONTAINSBuilt-in—
RANGE_ENDBuilt-in—
RANGE_INTERSECTBuilt-in—
RANGE_OVERLAPSBuilt-in—
RANGE_SESSIONIZEBuilt-in—
RANGE_STARTBuilt-in—
RANKBuilt-in✓
REGEXP_CONTAINSBuilt-in✓
REGEXP_EXTRACTBuilt-in✓
REGEXP_EXTRACT_ALLBuilt-in✓
REGEXP_INSTRBuilt-in✓
REGEXP_REPLACEBuilt-in✓
REGEXP_SUBSTRBuilt-in✓
REPEATBuilt-in✓
REPLACEBuilt-in✓
REVERSEBuilt-in✓
RIGHTBuilt-in✓
ROUNDBuilt-in✓
ROW_NUMBERBuilt-in✓
RPADBuilt-in✓
RTRIMBuilt-in✓
S2_CELLIDFROMPOINTBuilt-in✓
S2_COVERINGCELLIDSBuilt-in✓
SAFE_ADDBuilt-in✓
SAFE_CASTBuilt-in—
SAFE_CONVERT_BYTES_TO_STRINGBuilt-in✓
SAFE_DIVIDEBuilt-in✓
SAFE_MULTIPLYBuilt-in✓
SAFE_NEGATEBuilt-in✓
SAFE_SUBTRACTBuilt-in✓
SEARCHBuilt-in✓
SECBuilt-in✓
SECHBuilt-in✓
SESSION_USERBuilt-in✓
SHA1Built-in✓
SHA256Built-in✓
SHA512Built-in✓
SIGNBuilt-in✓
SINBuilt-in✓
SINHBuilt-in✓
SOUNDEXBuilt-in✓
SOURCE_NODE_IDBuilt-in—
SPLITBuilt-in✓
SQRTBuilt-in✓
ST_ANGLEBuilt-in✓
ST_AREABuilt-in✓
ST_ASBINARYBuilt-in✓
ST_ASGEOJSONBuilt-in✓
ST_ASTEXTBuilt-in✓
ST_AZIMUTHBuilt-in✓
ST_BOUNDARYBuilt-in✓
ST_BOUNDINGBOXBuilt-in✓
ST_BUFFERBuilt-in✓
ST_BUFFERWITHTOLERANCEBuilt-in✓
ST_CENTROIDBuilt-in✓
ST_CENTROID_AGGBuilt-in✓
ST_CLOSESTPOINTBuilt-in✓
ST_CLUSTERDBSCANBuilt-in✓
ST_CONTAINSBuilt-in✓
ST_CONVEXHULLBuilt-in✓
ST_COVEREDBYBuilt-in✓
ST_COVERSBuilt-in✓
ST_DIFFERENCEBuilt-in✓
ST_DIMENSIONBuilt-in✓
ST_DISJOINTBuilt-in✓
ST_DISTANCEBuilt-in✓
ST_DUMPBuilt-in✓
ST_DWITHINBuilt-in✓
ST_ENDPOINTBuilt-in✓
ST_EQUALSBuilt-in✓
ST_EXTENTBuilt-in—
ST_EXTERIORRINGBuilt-in✓
ST_GEOGFROMBuilt-in✓
ST_GEOGFROMGEOJSONBuilt-in✓
ST_GEOGFROMTEXTBuilt-in✓
ST_GEOGFROMWKBBuilt-in✓
ST_GEOGPOINTBuilt-in✓
ST_GEOGPOINTFROMGEOHASHBuilt-in✓
ST_GEOHASHBuilt-in✓
ST_GEOMETRYTYPEBuilt-in✓
ST_HAUSDORFFDISTANCEBuilt-in—
ST_HAUSDORFFDWITHINBuilt-in—
ST_INTERIORRINGSBuilt-in✓
ST_INTERSECTIONBuilt-in✓
ST_INTERSECTSBuilt-in✓
ST_INTERSECTSBOXBuilt-in✓
ST_ISCLOSEDBuilt-in✓
ST_ISCOLLECTIONBuilt-in✓
ST_ISEMPTYBuilt-in✓
ST_ISRINGBuilt-in✓
ST_LENGTHBuilt-in✓
ST_LINEINTERPOLATEPOINTBuilt-in—
ST_LINELOCATEPOINTBuilt-in✓
ST_LINESUBSTRINGBuilt-in—
ST_MAKELINEBuilt-in✓
ST_MAKEPOLYGONBuilt-in✓
ST_MAKEPOLYGONORIENTEDBuilt-in✓
ST_MAXDISTANCEBuilt-in✓
ST_NPOINTSBuilt-in✓
ST_NUMGEOMETRIESBuilt-in✓
ST_NUMPOINTSBuilt-in✓
ST_PERIMETERBuilt-in✓
ST_POINTNBuilt-in✓
ST_REGIONSTATSBuilt-in—
ST_SIMPLIFYBuilt-in✓
ST_SNAPTOGRIDBuilt-in✓
ST_STARTPOINTBuilt-in✓
ST_TOUCHESBuilt-in✓
ST_UNIONBuilt-in✓
ST_UNION_AGGBuilt-in✓
ST_WITHINBuilt-in✓
ST_XBuilt-in✓
ST_YBuilt-in✓
STARTS_WITHBuilt-in✓
STDDEVBuilt-in✓
STDDEV_POPBuilt-in✓
STDDEV_SAMPBuilt-in✓
STRING (JSON)Built-in✓
STRING (Timestamp)Built-in✓
STRING_AGGBuilt-in✓
STRPOSBuilt-in✓
SUBSTRBuilt-in✓
SUBSTRINGBuilt-in—
SUMBuilt-in✓
SUM (Differential Privacy)Built-in✓
TANBuilt-in✓
TANHBuilt-in✓
TEXT_ANALYZEBuilt-in—
TF_IDFBuilt-in—
TIMEBuilt-in✓
TIME_ADDBuilt-in✓
TIME_DIFFBuilt-in✓
TIME_SUBBuilt-in✓
TIME_TRUNCBuilt-in✓
TIMESTAMPBuilt-in✓
TIMESTAMP_ADDBuilt-in✓
TIMESTAMP_BUCKETBuilt-in—
TIMESTAMP_DIFFBuilt-in✓
TIMESTAMP_MICROSBuilt-in✓
TIMESTAMP_MILLISBuilt-in✓
TIMESTAMP_SECONDSBuilt-in✓
TIMESTAMP_SUBBuilt-in✓
TIMESTAMP_TRUNCBuilt-in✓
TO_BASE32Built-in✓
TO_BASE64Built-in✓
TO_CODE_POINTSBuilt-in✓
TO_HEXBuilt-in✓
TO_JSONBuilt-in✓
TO_JSON_STRINGBuilt-in✓
TRANSLATEBuilt-in✓
TRIMBuilt-in✓
TRUNCBuilt-in✓
TYPEOFBuilt-in—
UNICODEBuilt-in✓
UNIX_DATEBuilt-in✓
UNIX_MICROSBuilt-in✓
UNIX_MILLISBuilt-in✓
UNIX_SECONDSBuilt-in✓
UPPERBuilt-in✓
VAR_POPBuilt-in✓
VAR_SAMPBuilt-in✓
VARIANCEBuilt-in✓
VECTOR_INDEX.STATISTICSBuilt-in—
VECTOR_SEARCHBuilt-in—

Was this page helpful?

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

0