Operation Support Matrix¶
Backends are shown in descending order of the number of supported operations.
The Snowflake backend coverage is an overestimate
The Snowflake backend translation functions are reused from the PostgreSQL backend and some operations that claim coverage may not work.
The Snowflake backend is a good place to start contributing!
Core Operations¶
Backends | dask | pandas | duckdb | trino | snowflake | bigquery | clickhouse | postgres | polars | pyspark | mysql | impala | sqlite | mssql | datafusion |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
API Coverage | 192 (86%) | 192 (86%) | 191 (85%) | 191 (85%) | 190 (85%) | 189 (84%) | 182 (81%) | 182 (81%) | 169 (75%) | 169 (75%) | 162 (72%) | 161 (72%) | 158 (71%) | 149 (67%) | 58 (26%) |
Abs |
|||||||||||||||
Acos |
|||||||||||||||
Add |
|||||||||||||||
Alias |
|||||||||||||||
All |
|||||||||||||||
AnalyticVectorizedUDF |
|||||||||||||||
And |
|||||||||||||||
Any |
|||||||||||||||
ApproxCountDistinct |
|||||||||||||||
ApproxMedian |
|||||||||||||||
Arbitrary |
|||||||||||||||
ArgMax |
|||||||||||||||
ArgMin |
|||||||||||||||
ArrayCollect |
|||||||||||||||
ArrayColumn |
|||||||||||||||
ArrayConcat |
|||||||||||||||
ArrayIndex |
|||||||||||||||
ArrayLength |
|||||||||||||||
ArrayRepeat |
|||||||||||||||
ArraySlice |
|||||||||||||||
Asin |
|||||||||||||||
Atan2 |
|||||||||||||||
Atan |
|||||||||||||||
BaseConvert |
|||||||||||||||
BetweenTime |
|||||||||||||||
BitAnd |
|||||||||||||||
BitOr |
|||||||||||||||
BitXor |
|||||||||||||||
BitwiseAnd |
|||||||||||||||
BitwiseLeftShift |
|||||||||||||||
BitwiseNot |
|||||||||||||||
BitwiseOr |
|||||||||||||||
BitwiseRightShift |
|||||||||||||||
BitwiseXor |
|||||||||||||||
Bucket |
|||||||||||||||
Capitalize |
|||||||||||||||
Cast |
|||||||||||||||
CategoryLabel |
|||||||||||||||
Ceil |
|||||||||||||||
Clip |
|||||||||||||||
Coalesce |
|||||||||||||||
Correlation |
|||||||||||||||
Cos |
|||||||||||||||
Cot |
|||||||||||||||
CountDistinct |
|||||||||||||||
CountStar |
|||||||||||||||
Count |
|||||||||||||||
Covariance |
|||||||||||||||
CumeDist |
|||||||||||||||
CumulativeAll |
|||||||||||||||
CumulativeAny |
|||||||||||||||
CumulativeMax |
|||||||||||||||
CumulativeMean |
|||||||||||||||
CumulativeMin |
|||||||||||||||
CumulativeSum |
|||||||||||||||
DateAdd |
|||||||||||||||
DateDiff |
|||||||||||||||
DateFromYMD |
|||||||||||||||
DateSub |
|||||||||||||||
DateTruncate |
|||||||||||||||
Date |
|||||||||||||||
DayOfWeekIndex |
|||||||||||||||
DayOfWeekName |
|||||||||||||||
Degrees |
|||||||||||||||
DenseRank |
|||||||||||||||
E |
|||||||||||||||
ElementWiseVectorizedUDF |
|||||||||||||||
EndsWith |
|||||||||||||||
Equals |
|||||||||||||||
ExistsSubquery |
|||||||||||||||
Exp |
|||||||||||||||
ExtractAuthority |
|||||||||||||||
ExtractDayOfYear |
|||||||||||||||
ExtractDay |
|||||||||||||||
ExtractEpochSeconds |
|||||||||||||||
ExtractFile |
|||||||||||||||
ExtractFragment |
|||||||||||||||
ExtractHost |
|||||||||||||||
ExtractHour |
|||||||||||||||
ExtractMillisecond |
|||||||||||||||
ExtractMinute |
|||||||||||||||
ExtractMonth |
|||||||||||||||
ExtractPath |
|||||||||||||||
ExtractProtocol |
|||||||||||||||
ExtractQuarter |
|||||||||||||||
ExtractQuery |
|||||||||||||||
ExtractSecond |
|||||||||||||||
ExtractUserInfo |
|||||||||||||||
ExtractWeekOfYear |
|||||||||||||||
ExtractYear |
|||||||||||||||
FindInSet |
|||||||||||||||
FirstValue |
|||||||||||||||
FloorDivide |
|||||||||||||||
Floor |
|||||||||||||||
GreaterEqual |
|||||||||||||||
Greater |
|||||||||||||||
Greatest |
|||||||||||||||
GroupConcat |
|||||||||||||||
HashBytes |
|||||||||||||||
Hash |
|||||||||||||||
IdenticalTo |
|||||||||||||||
IfNull |
|||||||||||||||
IntervalAdd |
|||||||||||||||
IntervalFloorDivide |
|||||||||||||||
IntervalFromInteger |
|||||||||||||||
IntervalMultiply |
|||||||||||||||
IntervalSubtract |
|||||||||||||||
IsInf |
|||||||||||||||
IsNan |
|||||||||||||||
IsNull |
|||||||||||||||
JSONGetItem |
|||||||||||||||
LPad |
|||||||||||||||
LStrip |
|||||||||||||||
Lag |
|||||||||||||||
LastValue |
|||||||||||||||
Lead |
|||||||||||||||
Least |
|||||||||||||||
LessEqual |
|||||||||||||||
Less |
|||||||||||||||
Ln |
|||||||||||||||
Log10 |
|||||||||||||||
Log2 |
|||||||||||||||
Log |
|||||||||||||||
Lowercase |
|||||||||||||||
MapContains |
|||||||||||||||
MapGet |
|||||||||||||||
MapKeys |
|||||||||||||||
MapLength |
|||||||||||||||
MapMerge |
|||||||||||||||
MapValues |
|||||||||||||||
Map |
|||||||||||||||
Max |
|||||||||||||||
Mean |
|||||||||||||||
MinRank |
|||||||||||||||
Min |
|||||||||||||||
Mode |
|||||||||||||||
Modulus |
|||||||||||||||
MultiQuantile |
|||||||||||||||
Multiply |
|||||||||||||||
NTile |
|||||||||||||||
Negate |
|||||||||||||||
NotAll |
|||||||||||||||
NotAny |
|||||||||||||||
NotContains |
|||||||||||||||
NotEquals |
|||||||||||||||
NotExistsSubquery |
|||||||||||||||
NotNull |
|||||||||||||||
Not |
|||||||||||||||
NthValue |
|||||||||||||||
NullIfZero |
|||||||||||||||
NullIf |
|||||||||||||||
NullLiteral |
|||||||||||||||
Or |
|||||||||||||||
ParseURL |
|||||||||||||||
PercentRank |
|||||||||||||||
Pi |
|||||||||||||||
Power |
|||||||||||||||
Quantile |
|||||||||||||||
RPad |
|||||||||||||||
RStrip |
|||||||||||||||
Radians |
|||||||||||||||
RandomScalar |
|||||||||||||||
ReductionVectorizedUDF |
|||||||||||||||
RegexExtract |
|||||||||||||||
RegexReplace |
|||||||||||||||
RegexSearch |
|||||||||||||||
Repeat |
|||||||||||||||
Reverse |
|||||||||||||||
Round |
|||||||||||||||
RowID |
|||||||||||||||
RowNumber |
|||||||||||||||
SearchedCase |
|||||||||||||||
Sign |
|||||||||||||||
SimpleCase |
|||||||||||||||
Sin |
|||||||||||||||
SortKey |
|||||||||||||||
Sqrt |
|||||||||||||||
StandardDev |
|||||||||||||||
StartsWith |
|||||||||||||||
StrRight |
|||||||||||||||
Strftime |
|||||||||||||||
StringAscii |
|||||||||||||||
StringConcat |
|||||||||||||||
StringContains |
|||||||||||||||
StringFind |
|||||||||||||||
StringJoin |
|||||||||||||||
StringLength |
|||||||||||||||
StringReplace |
|||||||||||||||
StringSQLILike |
|||||||||||||||
StringSplit |
|||||||||||||||
StringToTimestamp |
|||||||||||||||
Strip |
|||||||||||||||
StructColumn |
|||||||||||||||
StructField |
|||||||||||||||
Substring |
|||||||||||||||
Subtract |
|||||||||||||||
Sum |
|||||||||||||||
TableArrayView |
|||||||||||||||
TableColumn |
|||||||||||||||
Tan |
|||||||||||||||
TimeAdd |
|||||||||||||||
TimeDiff |
|||||||||||||||
TimeFromHMS |
|||||||||||||||
TimeSub |
|||||||||||||||
TimeTruncate |
|||||||||||||||
Time |
|||||||||||||||
TimestampAdd |
|||||||||||||||
TimestampDiff |
|||||||||||||||
TimestampFromUNIX |
|||||||||||||||
TimestampFromYMDHMS |
|||||||||||||||
TimestampNow |
|||||||||||||||
TimestampSub |
|||||||||||||||
TimestampTruncate |
|||||||||||||||
TimestampUnary |
|||||||||||||||
ToIntervalUnit |
|||||||||||||||
Translate |
|||||||||||||||
TypeOf |
|||||||||||||||
Unnest |
|||||||||||||||
Uppercase |
|||||||||||||||
Variance |
|||||||||||||||
Where |
|||||||||||||||
Window |
|||||||||||||||
Xor |
|||||||||||||||
ZeroIfNull |
Geospatial Operations¶
Backends | mysql | postgres | bigquery |
---|---|---|---|
API Coverage | 45 (85%) | 45 (85%) | 36 (68%) |
GeoArea |
|||
GeoAsBinary |
|||
GeoAsEWKB |
|||
GeoAsEWKT |
|||
GeoAsText |
|||
GeoAzimuth |
|||
GeoBuffer |
|||
GeoCentroid |
|||
GeoContainsProperly |
|||
GeoContains |
|||
GeoCoveredBy |
|||
GeoCovers |
|||
GeoCrosses |
|||
GeoDFullyWithin |
|||
GeoDWithin |
|||
GeoDifference |
|||
GeoDisjoint |
|||
GeoDistance |
|||
GeoEndPoint |
|||
GeoEnvelope |
|||
GeoEquals |
|||
GeoGeometryN |
|||
GeoGeometryType |
|||
GeoIntersection |
|||
GeoIntersects |
|||
GeoIsValid |
|||
GeoLength |
|||
GeoLineLocatePoint |
|||
GeoLineMerge |
|||
GeoLineSubstring |
|||
GeoMaxDistance |
|||
GeoNPoints |
|||
GeoNRings |
|||
GeoOrderingEquals |
|||
GeoOverlaps |
|||
GeoPerimeter |
|||
GeoPointN |
|||
GeoPoint |
|||
GeoSRID |
|||
GeoSetSRID |
|||
GeoSimplify |
|||
GeoStartPoint |
|||
GeoTouches |
|||
GeoTransform |
|||
GeoUnaryUnion |
|||
GeoUnion |
|||
GeoWithin |
|||
GeoXMax |
|||
GeoXMin |
|||
GeoX |
|||
GeoYMax |
|||
GeoYMin |
|||
GeoY |
Last update:
December 9, 2022