Optional GQL features and analogous Cypher

This page lists optional GQL features that have analogous but not identical Cypher® features.

Optional GQL features are assigned a feature ID code. These codes order the features in the table below.

GQL Feature ID Description Comment and similar Cypher functionality

G100

ELEMENT_ID function

GQL’s ELEMENT_ID() function is equivalent to Cypher’s elementId() function.

GF04

Enhanced path functions

GQL’s PATH_LENGTH() function is equivalent to Cypher’s length() function.

GF10

Advanced aggregate functions: general set functions

  • GQL’s COLLECT_LIST() function is equivalent to Cypher’s collect() function.

  • GQL’s STDEV_SAMP() function is equivalent to Cypher’s stDev() function.

  • GQL’s STDEV_POP() function is equivalent to Cypher’s stDevP() function.

GF11

Advanced aggregate functions: binary set functions

  • GQL’s PERCENTILE_CONT() function is equivalent to Cypher’s percentileCont() function.

  • GQL’s PERCENTILE_DISC() function is equivalent to Cypher’s percentileDisc() function.

GQ09

LET statement

Adds columns to the current working table. Cypher uses WITH instead.

GQ10, GQ11, GQ23, GQ24

FOR statement: list value support, binding table support, WITH ORDINALITY, WITH OFFSET

Unnests a list or a binding table by expanding the current working table. Cypher uses UNWIND instead. Unlike the FOR statement, UNWIND does not support yielding indexes and offsets.

GV12

64-bit signed integer numbers

GQL’s SIGNED INTEGER64 (alternatively: INTEGER64, INT64) type is equivalent to Cypher’s INTEGER type.

GV23

Floating point type name synonyms

GQL’s DOUBLE type is equivalent to Cypher’s FLOAT type.

GV24

64-bit floating number

GQL’s FLOAT64 type is equivalent to Cypher’s FLOAT type.

GV45

Record types

GQL’s open RECORD type is equivalent to the MAP type in Cypher.