Data API query types


Syntax definitions

TableName

String

RoleName

String

PGColumnType

String
  1. Numeric types

    Type Alias Description
    serial   autoincrementing integer
    bigserial   autoincrementing bigint
    integer   4 bytes, typical choice for integer
    smallint   2 bytes
    bigint   8 bytes
    real float4 6 decimal digits precision, inexact
    double precision float8 15 decimal digits precision, inexact
    numeric decimal arbitrary precision, exact
  2. Character types

    Type Alias Description
    varchar text typical choice for storing string types
  3. Date/Time types

    Type Alias Description
    timestamp with time zone timestamptz both date and time, with time zone. Allowed values should be of ISO8601 format. Eg. 2016-07-20T17:30:15Z, 2016-07-20T17:30:15+05:30, 2016-07-20T17:30:15.234890+05:30
    time with time zone timetz time of day only, with time zone. Allowed values should be of ISO8601 format. Eg. 17:30:15Z, 17:30:15+05:30, 17:30:15.234890+05:30
    date   date (no time of day). Allowed values are yyyy-mm-dd
  4. Boolean type

    Type Alias Description
    boolean   state of true or false
  5. JSON types

    Type Alias Description
    json   Stored as plain text
    jsonb   Stored in a binary format and can be indexed

PGColumn

String

RelationshipName

String

BoolExp

AndExp | OrExp | NotExp | ColumnExp

AndExp

{
    "$and" : [BoolExp],
}

OrExp

{
    "$or"  : [BoolExp],
}

NotExp

{
    "$not" : BoolExp
}

ColumnExp

{
    PGColumn : { Operator : Value }
}

Operator

Generic operators (all column types except json, jsonb) :

  • "$eq"
  • "$ne"
  • "$in"
  • "$nin"
  • "$gt"
  • "$lt"
  • "$gte"
  • "$lte"

Text related operators :

  • "$like"
  • "$nlike"
  • "$ilike"
  • "$nilike"
  • "$similar"
  • "$nsimilar"

Operators for comparing columns (all column types except json, jsonb):

  • "$ceq"
  • "$cne"
  • "$cgt"
  • "$clt"
  • "$cgte"
  • "$clte"

Object

A JSONObject

{
   "k1" : v1,
   "k2" : v2,
   ..
}