Skip to content

Example Schema

Generated from a test fixture of zipcodes.

Query (Table)

a dataset with a derived schema

Field Argument Type Description
type String! [ibis table](https://ibis-project.org/reference/expression-table) or [arrow dataset](https://arrow.apache.org/docs/python/api/dataset.html)
schema Schema! [table schema](https://ibis-project.org/reference/schemas#ibis.expr.schema.Schema)
cast Table! [Cast](https://ibis-project.org/reference/expression-tables#ibis.expr.types.relations.Table.cast) the columns of a table.
schema [Field!]! field names and types
try Boolean! return null if cast fails
optional Table Nullable field to stop error propagation, enabling partial query results. Will be replaced by client controlled nullability.
count BigInt! [Count](https://ibis-project.org/reference/expression-tables#ibis.expr.types.relations.Table.count) the number of rows.
any Boolean! Whether there are at least `limit` rows. May be significantly faster than `count` for out-of-core data.
limit BigInt!
column Column Column of any type by name. If the column is in the schema, `columns` can be used instead.
name [String!]! column name(s); multiple names access nested struct fields
cast String! cast expression to indicated [data type](https://ibis-project.org/reference/datatypes)
try Boolean! return null if cast fails
slice Table! [Limit](https://ibis-project.org/reference/expression-tables#ibis.expr.types.relations.Table.limit) row selection.
offset BigInt! number of rows to skip; negative value skips from the end
limit BigInt maximum number of rows to return
distinct Table! [Remove duplicate](https://ibis-project.org/reference/expression-tables#ibis.expr.types.relations.Table.distinct) rows from table. Differs from `group` by keeping all columns, and defaulting to all keys.
on [String!] column names to deduplicate on; defaults to all
keep String which duplicates to keep
counts String! [value counts](https://ibis-project.org/reference/expression-tables#ibis.expr.types.relations.Table.value_counts); incompatible with `keep: null`
order String! optionally include and order by first row number; incompatible with `on: null`
group Table! [Group](https://ibis-project.org/reference/expression-tables#ibis.expr.types.relations.Table.group_by) table by columns.
by [String!]! column names; empty will aggregate into a single row table
counts String! optionally include counts in an aliased column
order String! optionally include and order by first row number
aggregate Aggregates! aggregation functions applied to other columns
order Table! [Sort](https://ibis-project.org/reference/expression-tables#ibis.expr.types.relations.Table.order_by) table by columns.
by [String!]! column names; prefix with `-` for descending order
limit BigInt maximum number of rows to return; optimized for partitioned dataset keys
dense Boolean! use dense rank with `limit`
unnest Table! [Unnest](https://ibis-project.org/reference/expression-tables#ibis.expr.types.relations.Table.unnest) an array column from a table.
name String! column name
offset String! optionally include index column
keepEmpty Boolean! keep empty array values as null
rowNumber String! optionally include first row number in an aliased column
join Table! [Join](https://ibis-project.org/reference/expression-tables#ibis.expr.types.relations.Table.join) two tables.
right String! name of right table; must be on root Query type
keys [String!]! column names used as keys on the left side
rkeys [String!]! column names used as keys on the right side; defaults to left side
how String! the kind of join: 'inner', 'left', 'right', ...
lname String! format string to use to rename overlapping columns in the left table
rname String! format string to use to rename overlapping columns in the right table
take Table! [Take](https://arrow.apache.org/docs/python/generated/pyarrow.dataset.Dataset.html#pyarrow.dataset.Dataset.take) rows by index.
indices [BigInt!]!
dropNull Table! [Drop](https://ibis-project.org/reference/expression-tables#ibis.expr.types.relations.Table.drop_null) rows with null values.
subset [String!] columns names; defaults to all
how String! remove if `any` or `all` are null
fillNull Table! [Fill null](https://ibis-project.org/reference/expression-tables.html#ibis.expr.types.relations.Table.fill_null) values.
name [String!] column name(s); defaults to all
value JSON JSON scalar
scalar Scalars! typed scalar
project Table! [Mutate](https://ibis-project.org/reference/expression-tables#ibis.expr.types.relations.Table.mutate) columns by expressions. Renamed to not be confused with a mutation.
columns [Projection!]!
runs Table! Provisionally group table by adjacent values in columns.
by [String!]! column names to compare by equality
split [Projection!]! boolean column expressions to split on true values
counts String! optionally include counts in an aliased column
alias String! format string to name index columns
aggregate Aggregates! aggregation functions applied to other columns
columns Columns! fields for each column
row Row Return scalar values at index.
index BigInt!
filter Table! [Filter](https://ibis-project.org/reference/expression-tables#ibis.expr.types.relations.Table.filter) rows by predicates. Schema derived fields provide syntax for simple queries; `where` supports complex queries.
latitude FloatFilter!
longitude FloatFilter!
state StrFilter!
city StrFilter!
county StrFilter!
zipcode IntFilter!
where Expression

Objects

ArrayColumn

array column

Field Argument Type Description
type String! [data type](https://ibis-project.org/reference/datatypes)
count BigInt! Compute the number of rows in an expression.
nunique BigInt! Compute the number of distinct rows in an expression.
approx Boolean!

Base64Column

generic column

Field Argument Type Description
type String! [data type](https://ibis-project.org/reference/datatypes)
count BigInt! Compute the number of rows in an expression.
nunique BigInt! Compute the number of distinct rows in an expression.
approx Boolean!
values [Base64]! list of values
distinct Base64Set! distinct values and counts
first Base64 Return the first value of a column.
last Base64 Return the last value of a column.
dropNull [Base64!]! non-null values
fillNull [Base64!]! Replace `NULL`s with the given value. Does NOT affect `NaN` and `inf` values.
value Base64!
mode Base64 Return the mode of a column.
min Base64 Return the minimum of a column.
max Base64 Return the maximum of a column.
quantile [Base64!] Return value at the given quantile.
q [Float!]!

Base64Set

distinct values and counts

Field Argument Type Description
values [Base64]! distinct values
counts [BigInt!]! corresponding counts

BigIntColumn

integer column

Field Argument Type Description
type String! [data type](https://ibis-project.org/reference/datatypes)
count BigInt! Compute the number of rows in an expression.
nunique BigInt! Compute the number of distinct rows in an expression.
approx Boolean!
values [BigInt]! list of values
distinct BigIntSet! distinct values and counts
first BigInt Return the first value of a column.
last BigInt Return the last value of a column.
dropNull [BigInt!]! non-null values
fillNull [BigInt!]! Replace `NULL`s with the given value. Does NOT affect `NaN` and `inf` values.
value BigInt!
mode BigInt Return the mode of a column.
min BigInt Return the minimum of a column.
max BigInt Return the maximum of a column.
quantile [Float!] Return value at the given quantile.
q [Float!]!
approx Boolean!
sum BigInt Return the sum of a numeric column.
mean Float Return the mean of a numeric column.
std Float Return the standard deviation of a numeric column.
how String!
var Float Return the variance of a numeric column.
how String!
takeFrom Dataset Select indices from a table on the root Query type.
field String!

BigIntSet

distinct values and counts

Field Argument Type Description
values [BigInt]! distinct values
counts [BigInt!]! corresponding counts

BoolSet

distinct values and counts

Field Argument Type Description
values [Boolean]! distinct values
counts [BigInt!]! corresponding counts

BooleanColumn

boolean column

Field Argument Type Description
type String! [data type](https://ibis-project.org/reference/datatypes)
count BigInt! Compute the number of rows in an expression.
nunique BigInt! Compute the number of distinct rows in an expression.
approx Boolean!
values [Boolean]! list of values
distinct BoolSet! distinct values and counts
first Boolean Return the first value of a column.
last Boolean Return the last value of a column.
dropNull [Boolean!]! non-null values
fillNull [Boolean!]! Replace `NULL`s with the given value. Does NOT affect `NaN` and `inf` values.
value Boolean!
mode Boolean Return the mode of a column.
min Boolean Return the minimum of a column.
max Boolean Return the maximum of a column.
quantile [Float!] Return value at the given quantile.
q [Float!]!
approx Boolean!
sum Boolean Return the sum of a numeric column.
mean Float Return the mean of a numeric column.
std Float Return the standard deviation of a numeric column.
how String!
var Float Return the variance of a numeric column.
how String!
any Boolean Return whether at least one element is `True`.
all Boolean Return whether all elements are `True`.

Columns

fields for each column

Field Argument Type Description
latitude FloatColumn
longitude FloatColumn
state StringColumn
city StringColumn
county StringColumn
zipcode IntColumn

DateColumn

temporal column

Field Argument Type Description
type String! [data type](https://ibis-project.org/reference/datatypes)
count BigInt! Compute the number of rows in an expression.
nunique BigInt! Compute the number of distinct rows in an expression.
approx Boolean!
values [Date]! list of values
distinct DateSet! distinct values and counts
first Date Return the first value of a column.
last Date Return the last value of a column.
dropNull [Date!]! non-null values
fillNull [Date!]! Replace `NULL`s with the given value. Does NOT affect `NaN` and `inf` values.
value Date!
mode Date Return the mode of a column.
min Date Return the minimum of a column.
max Date Return the maximum of a column.
quantile [Date!] Return value at the given quantile.
q [Float!]!

DateSet

distinct values and counts

Field Argument Type Description
values [Date]! distinct values
counts [BigInt!]! corresponding counts

DatetimeColumn

temporal column

Field Argument Type Description
type String! [data type](https://ibis-project.org/reference/datatypes)
count BigInt! Compute the number of rows in an expression.
nunique BigInt! Compute the number of distinct rows in an expression.
approx Boolean!
values [DateTime]! list of values
distinct DatetimeSet! distinct values and counts
first DateTime Return the first value of a column.
last DateTime Return the last value of a column.
dropNull [DateTime!]! non-null values
fillNull [DateTime!]! Replace `NULL`s with the given value. Does NOT affect `NaN` and `inf` values.
value DateTime!
mode DateTime Return the mode of a column.
min DateTime Return the minimum of a column.
max DateTime Return the maximum of a column.
quantile [DateTime!] Return value at the given quantile.
q [Float!]!

DatetimeSet

distinct values and counts

Field Argument Type Description
values [DateTime]! distinct values
counts [BigInt!]! corresponding counts

DecimalColumn

numeric column

Field Argument Type Description
type String! [data type](https://ibis-project.org/reference/datatypes)
count BigInt! Compute the number of rows in an expression.
nunique BigInt! Compute the number of distinct rows in an expression.
approx Boolean!
values [Decimal]! list of values
distinct DecimalSet! distinct values and counts
first Decimal Return the first value of a column.
last Decimal Return the last value of a column.
dropNull [Decimal!]! non-null values
fillNull [Decimal!]! Replace `NULL`s with the given value. Does NOT affect `NaN` and `inf` values.
value Decimal!
mode Decimal Return the mode of a column.
min Decimal Return the minimum of a column.
max Decimal Return the maximum of a column.
quantile [Float!] Return value at the given quantile.
q [Float!]!
approx Boolean!
sum Decimal Return the sum of a numeric column.
mean Float Return the mean of a numeric column.
std Float Return the standard deviation of a numeric column.
how String!
var Float Return the variance of a numeric column.
how String!

DecimalSet

distinct values and counts

Field Argument Type Description
values [Decimal]! distinct values
counts [BigInt!]! corresponding counts

DurationColumn

provisional interval column

Interval support varies by backend; durations may still be useful for computation and as scalar inputs.

Field Argument Type Description
type String! [data type](https://ibis-project.org/reference/datatypes)
count BigInt! Compute the number of rows in an expression.
nunique BigInt! Compute the number of distinct rows in an expression.
approx Boolean!
values [Duration]! list of values
distinct DurationSet! distinct values and counts
first Duration Return the first value of a column.
last Duration Return the last value of a column.
dropNull [Duration!]! non-null values
fillNull [Duration!]! Replace `NULL`s with the given value. Does NOT affect `NaN` and `inf` values.
value Duration!
mode Duration Return the mode of a column.
min Duration Return the minimum of a column.
max Duration Return the maximum of a column.
quantile [Duration!] Return value at the given quantile.
q [Float!]!

DurationSet

distinct values and counts

Field Argument Type Description
values [Duration]! distinct values
counts [BigInt!]! corresponding counts

FloatColumn

numeric column

Field Argument Type Description
type String! [data type](https://ibis-project.org/reference/datatypes)
count BigInt! Compute the number of rows in an expression.
nunique BigInt! Compute the number of distinct rows in an expression.
approx Boolean!
values [Float]! list of values
distinct FloatSet! distinct values and counts
first Float Return the first value of a column.
last Float Return the last value of a column.
dropNull [Float!]! non-null values
fillNull [Float!]! Replace `NULL`s with the given value. Does NOT affect `NaN` and `inf` values.
value Float!
mode Float Return the mode of a column.
min Float Return the minimum of a column.
max Float Return the maximum of a column.
quantile [Float!] Return value at the given quantile.
q [Float!]!
approx Boolean!
sum Float Return the sum of a numeric column.
mean Float Return the mean of a numeric column.
std Float Return the standard deviation of a numeric column.
how String!
var Float Return the variance of a numeric column.
how String!

FloatSet

distinct values and counts

Field Argument Type Description
values [Float]! distinct values
counts [BigInt!]! corresponding counts

IntColumn

integer column

Field Argument Type Description
type String! [data type](https://ibis-project.org/reference/datatypes)
count BigInt! Compute the number of rows in an expression.
nunique BigInt! Compute the number of distinct rows in an expression.
approx Boolean!
values [Int]! list of values
distinct IntSet! distinct values and counts
first Int Return the first value of a column.
last Int Return the last value of a column.
dropNull [Int!]! non-null values
fillNull [Int!]! Replace `NULL`s with the given value. Does NOT affect `NaN` and `inf` values.
value Int!
mode Int Return the mode of a column.
min Int Return the minimum of a column.
max Int Return the maximum of a column.
quantile [Float!] Return value at the given quantile.
q [Float!]!
approx Boolean!
sum Int Return the sum of a numeric column.
mean Float Return the mean of a numeric column.
std Float Return the standard deviation of a numeric column.
how String!
var Float Return the variance of a numeric column.
how String!
takeFrom Dataset Select indices from a table on the root Query type.
field String!

IntSet

distinct values and counts

Field Argument Type Description
values [Int]! distinct values
counts [BigInt!]! corresponding counts

JSONColumn

struct column

Field Argument Type Description
type String! [data type](https://ibis-project.org/reference/datatypes)
count BigInt! Compute the number of rows in an expression.
nunique BigInt! Compute the number of distinct rows in an expression.
approx Boolean!
values [JSON]! list of values
distinct JSONSet! distinct values and counts
first JSON Return the first value of a column.
last JSON Return the last value of a column.
dropNull [JSON!]! non-null values
fillNull [JSON!]! Replace `NULL`s with the given value. Does NOT affect `NaN` and `inf` values.
value JSON!
mode JSON Return the mode of a column.
min JSON Return the minimum of a column.
max JSON Return the maximum of a column.
quantile [JSON!] Return value at the given quantile.
q [Float!]!
names [String!]! field names

JSONSet

distinct values and counts

Field Argument Type Description
values [JSON]! distinct values
counts [BigInt!]! corresponding counts

Row

scalar fields

Field Argument Type Description
latitude Float
longitude Float
state String
city String
county String
zipcode Int

Schema

table schema

Field Argument Type Description
names [String!]! field names
types [String!]! [data type](https://ibis-project.org/reference/datatypes), corresponding to `names`
partitioning [String!]! partition keys

StrSet

distinct values and counts

Field Argument Type Description
values [String]! distinct values
counts [BigInt!]! corresponding counts

StringColumn

string column

Field Argument Type Description
type String! [data type](https://ibis-project.org/reference/datatypes)
count BigInt! Compute the number of rows in an expression.
nunique BigInt! Compute the number of distinct rows in an expression.
approx Boolean!
values [String]! list of values
distinct StrSet! distinct values and counts
first String Return the first value of a column.
last String Return the last value of a column.
dropNull [String!]! non-null values
fillNull [String!]! Replace `NULL`s with the given value. Does NOT affect `NaN` and `inf` values.
value String!
mode String Return the mode of a column.
min String Return the minimum of a column.
max String Return the maximum of a column.
quantile [String!] Return value at the given quantile.
q [Float!]!

TimeColumn

temporal column

Field Argument Type Description
type String! [data type](https://ibis-project.org/reference/datatypes)
count BigInt! Compute the number of rows in an expression.
nunique BigInt! Compute the number of distinct rows in an expression.
approx Boolean!
values [Time]! list of values
distinct TimeSet! distinct values and counts
first Time Return the first value of a column.
last Time Return the last value of a column.
dropNull [Time!]! non-null values
fillNull [Time!]! Replace `NULL`s with the given value. Does NOT affect `NaN` and `inf` values.
value Time!
mode Time Return the mode of a column.
min Time Return the minimum of a column.
max Time Return the maximum of a column.
quantile [Time!] Return value at the given quantile.
q [Float!]!

TimeSet

distinct values and counts

Field Argument Type Description
values [Time]! distinct values
counts [BigInt!]! corresponding counts

Inputs

Aggregate

name and optional alias for aggregation

Field Type Description
name String! column name
alias String! output column name
where Expression

Aggregates

aggregation expressions

Field Type Description
all [Aggregate!]! Return whether all elements are `True`.
any [Aggregate!]! Return whether at least one element is `True`.
collect [CollectAggregate!]! Aggregate this expression's elements into an array.
count [Aggregate!]! Compute the number of rows in an expression.
first [OrderAggregate!]! Return the first value of a column.
last [OrderAggregate!]! Return the last value of a column.
max [Aggregate!]! Return the maximum of a column.
mean [Aggregate!]! Return the mean of a numeric column.
min [Aggregate!]! Return the minimum of a column.
nunique [UniqueAggregate!]! Compute the number of distinct rows in an expression.
quantile [QuantileAggregate!]! Return value at the given quantile.
std [VarAggregate!]! Return the standard deviation of a numeric column.
sum [Aggregate!]! Return the sum of a numeric column.
var [VarAggregate!]! Return the variance of a numeric column.

Arrays

array expressions

Field Type Description
alls Expression Return whether all elements (ignoring nulls) in the array are true.
anys Expression Return whether any element in the array is true.
length Expression Compute the length of an array.
maxs Expression Return the maximum value in the array.
means Expression Return the mean of the values in the array.
modes Expression Return the mode of the values in the array.
mins Expression Return the minimum value in the array.
sort Expression Sort the elements in an array.
sums Expression Return the sum of the values in the array.
unique Expression Return the unique values in an array.
index [Expression!]! Return the position of `other` in an array.
slice Expression array slice
value Expression value at offset
offset Int!
limit Int

CollectAggregate

Field Type Description
name String! column name
alias String! output column name
where Expression
orderBy [String!]!
includeNull Boolean!
distinct Boolean!

Expression

expression API

Field Type Description
name [String!]! column name(s)
value JSON JSON scalar
scalar Scalars typed scalar
rowNumber Void Return an analytic function expression for the current row number.
eq [Expression!]! ==
ne [Expression!]! !=
lt [Expression!]! <
le [Expression!]! <=
gt [Expression!]! \>
ge [Expression!]! \>=
isin [Expression!]! Check whether this expression is in `values`.
notin [Expression!]! Check whether this expression is not in `values`.
inv Expression ~
and [Expression!]! &
or [Expression!]! |
xor [Expression!]! ^
add [Expression!]! +
sub [Expression!]! -
mul [Expression!]! *
div [Expression!]! /
coalesce [Expression!]! Return the first non-null value from `args`.
cumeDist Expression Return the cumulative distribution over a window.
cummax Expression Return the cumulative max over a window.
cummin Expression Return the cumulative min over a window.
denseRank Expression Position of first element within each group of equal values.
ifelse [Expression!]! Construct a ternary conditional expression.
percentRank Expression Return the relative rank of the values in the column.
rank Expression Compute position of first element within each equal-value group in sorted order.
array Arrays array value functions
numeric Numeric numeric functions
string Strings string functions
temporal Temporal temporal functions
window Window window functions

Field

a schema field

Field Type Description
name String!
type String!

FloatFilter

predicates for scalars

Field Type Description
eq [Float!] == or `isin`
ne [Float!] != or `notin`
lt Float <
le Float <=
gt Float \>
ge Float \>=

IntFilter

predicates for scalars

Field Type Description
eq [Int!] == or `isin`
ne [Int!] != or `notin`
lt Int <
le Int <=
gt Int \>
ge Int \>=

Numeric

numeric expressions

Field Type Description
abs Expression Return the absolute value of `self`.
acos Expression Compute the arc cosine of `self`.
asin Expression Compute the arc sine of `self`.
atan Expression Compute the arc tangent of `self`.
atan2 [Expression!]! Compute the two-argument version of arc tangent.
ceil Expression Return the ceiling of `self`.
cos Expression Compute the cosine of `self`.
exp Expression Compute $e^\texttt{self}$.
floor Expression Return the floor of an expression.
isinf Expression Return whether the value is +/-inf. Does NOT detect `NULL` and `inf` values.
isnan Expression Return whether the value is NaN. Does NOT detect `NULL` and `inf` values.
log [Expression!]! Compute $\log_{\texttt{base}}\left(\texttt{self}\right)$.
negate Expression Negate a numeric expression.
round [Expression!]! Round values to an indicated number of decimal places.
sign Expression Return the sign of the input.
sin Expression Compute the sine of `self`.
sqrt Expression Compute the square root of `self`.
tan Expression Compute the tangent of `self`.
bucket Expression Compute a discrete binning of a numeric array.
cummean Expression Return the cumulative mean of the input.
cumsum Expression Return the cumulative sum of the input.
buckets [JSON!]!
closed String!
closeExtreme Boolean!
includeUnder Boolean!
includeOver Boolean!

OrderAggregate

Field Type Description
name String! column name
alias String! output column name
where Expression
orderBy [String!]!
includeNull Boolean!

Projection

an Expression with an optional alias

Field Type Description
name [String!]! column name(s)
value JSON JSON scalar
scalar Scalars typed scalar
rowNumber Void Return an analytic function expression for the current row number.
eq [Expression!]! ==
ne [Expression!]! !=
lt [Expression!]! <
le [Expression!]! <=
gt [Expression!]! \>
ge [Expression!]! \>=
isin [Expression!]! Check whether this expression is in `values`.
notin [Expression!]! Check whether this expression is not in `values`.
inv Expression ~
and [Expression!]! &
or [Expression!]! |
xor [Expression!]! ^
add [Expression!]! +
sub [Expression!]! -
mul [Expression!]! *
div [Expression!]! /
coalesce [Expression!]! Return the first non-null value from `args`.
cumeDist Expression Return the cumulative distribution over a window.
cummax Expression Return the cumulative max over a window.
cummin Expression Return the cumulative min over a window.
denseRank Expression Position of first element within each group of equal values.
ifelse [Expression!]! Construct a ternary conditional expression.
percentRank Expression Return the relative rank of the values in the column.
rank Expression Compute position of first element within each equal-value group in sorted order.
array Arrays array value functions
numeric Numeric numeric functions
string Strings string functions
temporal Temporal temporal functions
window Window window functions
alias String! name of projected column

QuantileAggregate

Field Type Description
name String! column name
alias String! output column name
where Expression
approx Boolean!
q Float!

Scalars

typed scalars

Field Type Description
base64 Base64 binary scalar
date Date date scalar
datetime DateTime datetime scalar
decimal Decimal decimal scalar
duration Duration duration scalar
time Time time scalar

StrFilter

predicates for scalars

Field Type Description
eq [String!] == or `isin`
ne [String!] != or `notin`
lt String <
le String <=
gt String \>
ge String \>=

Strings

string expressions

Field Type Description
capitalize Expression Uppercase the first letter, lowercase the rest.
contains [Expression!]! Return whether the expression contains `substr`.
endswith [Expression!]! Determine if `self` ends with `end`.
find [Expression!]! Return the position of the first occurrence of substring.
length Expression Compute the length of a string.
lower Expression Convert string to all lowercase.
lpad [Expression!]! Pad `arg` by truncating on the right or padding on the left.
lstrip [Expression!]! Remove whitespace from the left side of string.
reExtract [Expression!]! Return the specified match at `index` from a regex `pattern`.
reSearch [Expression!]! Return whether `self` contains the regex `pattern`.
reSplit [Expression!]! Split a string by a regular expression `pattern`.
replace [Expression!]! Replace each exact match of `pattern` with `replacement`.
reverse Expression Reverse the characters of a string.
rpad [Expression!]! Pad `self` by truncating or padding on the right.
rstrip [Expression!]! Remove whitespace from the right side of string.
split [Expression!]! Split as string on `delimiter`.
startswith [Expression!]! Determine whether `self` starts with `start`.
strip [Expression!]! Remove whitespace from left and right sides of a string.
upper Expression Convert string to all uppercase.

Temporal

temporal expressions

Field Type Description
date Expression Return the date component of the expression.
day Expression Extract the day component.
dayOfYear Expression Extract the day of the year component.
delta [Expression!]! Compute the number of `part`s between two timestamps.
epochSeconds Expression Extract UNIX epoch in seconds.
hour Expression Extract the hour component.
microsecond Expression Extract the microsecond component.
millisecond Expression Extract the millisecond component.
minute Expression Extract the minute component.
month Expression Extract the month component.
quarter Expression Extract the quarter component.
second Expression Extract the second component.
strftime Expression Format a timestamp according to `format_str`.
time Expression Return the time component of the expression.
truncate Expression Truncate timestamp expression to units of `unit`.
weekOfYear Expression Extract the week of the year component.
year Expression Extract the year component.
formatStr String!
unit String!

UniqueAggregate

Field Type Description
name String! column name
alias String! output column name
where Expression
approx Boolean!

VarAggregate

Field Type Description
name String! column name
alias String! output column name
where Expression
how String!

Window

window expressions

Field Type Description
lag Expression Return the row located at `offset` rows **before** the current row.
lead Expression Return the row located at `offset` rows **after** the current row.
eq Expression pairwise ==
ne Expression pairwise !=
lt Expression pairwise <
le Expression pairwise <=
gt Expression pairwise \>
ge Expression pairwise \>=
sub Expression pairwise -
offset Int!
default JSON default JSON scalar
scalar Scalars default typed scalar

Scalars

Base64

Represents binary data as Base64-encoded strings, using the standard alphabet.

BigInt

64-bit int

Boolean

The Boolean scalar type represents true or false.

Date

Date (isoformat)

DateTime

Date with time (isoformat)

Decimal

Decimal (fixed-point)

Duration

Duration (isoformat)

Float

The Float scalar type represents signed double-precision fractional values as specified by IEEE 754.

Int

The Int scalar type represents non-fractional signed whole numeric values. Int can represent values between -(2^31) and 2^31 - 1.

JSON

The JSON scalar type represents JSON values as specified by ECMA-404.

String

The String scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.

Time

Time (isoformat)

Void

Represents NULL values

Interfaces

Column

ibis column interface

Field Argument Type Description
type String! [data type](https://ibis-project.org/reference/datatypes)
count BigInt! Compute the number of rows in an expression.
nunique BigInt! Compute the number of distinct rows in an expression.
approx Boolean!

Possible Types: ArrayColumn, Base64Column, BigIntColumn, BooleanColumn, DateColumn, DatetimeColumn, DecimalColumn, DurationColumn, FloatColumn, IntColumn, JSONColumn, StringColumn, TimeColumn

Dataset

ibis Table or arrow Dataset

Field Argument Type Description
type String! [ibis table](https://ibis-project.org/reference/expression-table) or [arrow dataset](https://arrow.apache.org/docs/python/api/dataset.html)
schema Schema! [table schema](https://ibis-project.org/reference/schemas#ibis.expr.schema.Schema)
cast Dataset! [Cast](https://ibis-project.org/reference/expression-tables#ibis.expr.types.relations.Table.cast) the columns of a table.
schema [Field!]! field names and types
try Boolean! return null if cast fails
optional Dataset Nullable field to stop error propagation, enabling partial query results. Will be replaced by client controlled nullability.
count BigInt! [Count](https://ibis-project.org/reference/expression-tables#ibis.expr.types.relations.Table.count) the number of rows.
any Boolean! Whether there are at least `limit` rows. May be significantly faster than `count` for out-of-core data.
limit BigInt!
column Column Column of any type by name. If the column is in the schema, `columns` can be used instead.
name [String!]! column name(s); multiple names access nested struct fields
cast String! cast expression to indicated [data type](https://ibis-project.org/reference/datatypes)
try Boolean! return null if cast fails
slice Dataset! [Limit](https://ibis-project.org/reference/expression-tables#ibis.expr.types.relations.Table.limit) row selection.
offset BigInt! number of rows to skip; negative value skips from the end
limit BigInt maximum number of rows to return
distinct Dataset! [Remove duplicate](https://ibis-project.org/reference/expression-tables#ibis.expr.types.relations.Table.distinct) rows from table. Differs from `group` by keeping all columns, and defaulting to all keys.
on [String!] column names to deduplicate on; defaults to all
keep String which duplicates to keep
counts String! [value counts](https://ibis-project.org/reference/expression-tables#ibis.expr.types.relations.Table.value_counts); incompatible with `keep: null`
order String! optionally include and order by first row number; incompatible with `on: null`
group Dataset! [Group](https://ibis-project.org/reference/expression-tables#ibis.expr.types.relations.Table.group_by) table by columns.
by [String!]! column names; empty will aggregate into a single row table
counts String! optionally include counts in an aliased column
order String! optionally include and order by first row number
aggregate Aggregates! aggregation functions applied to other columns
order Dataset! [Sort](https://ibis-project.org/reference/expression-tables#ibis.expr.types.relations.Table.order_by) table by columns.
by [String!]! column names; prefix with `-` for descending order
limit BigInt maximum number of rows to return; optimized for partitioned dataset keys
dense Boolean! use dense rank with `limit`
unnest Dataset! [Unnest](https://ibis-project.org/reference/expression-tables#ibis.expr.types.relations.Table.unnest) an array column from a table.
name String! column name
offset String! optionally include index column
keepEmpty Boolean! keep empty array values as null
rowNumber String! optionally include first row number in an aliased column
join Dataset! [Join](https://ibis-project.org/reference/expression-tables#ibis.expr.types.relations.Table.join) two tables.
right String! name of right table; must be on root Query type
keys [String!]! column names used as keys on the left side
rkeys [String!]! column names used as keys on the right side; defaults to left side
how String! the kind of join: 'inner', 'left', 'right', ...
lname String! format string to use to rename overlapping columns in the left table
rname String! format string to use to rename overlapping columns in the right table
take Dataset! [Take](https://arrow.apache.org/docs/python/generated/pyarrow.dataset.Dataset.html#pyarrow.dataset.Dataset.take) rows by index.
indices [BigInt!]!
dropNull Dataset! [Drop](https://ibis-project.org/reference/expression-tables#ibis.expr.types.relations.Table.drop_null) rows with null values.
subset [String!] columns names; defaults to all
how String! remove if `any` or `all` are null
fillNull Dataset! [Fill null](https://ibis-project.org/reference/expression-tables.html#ibis.expr.types.relations.Table.fill_null) values.
name [String!] column name(s); defaults to all
value JSON JSON scalar
scalar Scalars! typed scalar
project Dataset! [Mutate](https://ibis-project.org/reference/expression-tables#ibis.expr.types.relations.Table.mutate) columns by expressions. Renamed to not be confused with a mutation.
columns [Projection!]!
runs Dataset! Provisionally group table by adjacent values in columns.
by [String!]! column names to compare by equality
split [Projection!]! boolean column expressions to split on true values
counts String! optionally include counts in an aliased column
alias String! format string to name index columns
aggregate Aggregates! aggregation functions applied to other columns

Possible Types: Table