CipherStashDocs
ReferenceEQL

Functions

Generated catalog of EQL SQL functions and operators (EQL 3.0.4).

EQL version

This reference is generated and validated against EQL 3.0.4. Running EQL 2.x? See the EQL v2 reference.

Generated from the EQL 3.0.4 manifest (the Doxygen'd SQL is the source of truth). For the model behind these — variants, terms, typed operands — see Core concepts.

The EQL SQL surface — encrypted domains (in the public schema) and the eql_v3 functions behind them. The type and query pages explain when to use these; this page is the exhaustive reference they link to.

Encrypted domains

A column's capability is declared by its domain variant. This matrix comes straight from the Rust catalog (eql-codegen dump-catalog) — the source of truth the SQL is generated from. See Core concepts for the model.

DomainTypeVariantCapabilitiesOperators
public.eql_v3_bigintbigint(storage only)storage
public.eql_v3_bigint_eqbigint_eqequality= <>
public.eql_v3_bigint_ordbigint_ordequality, order= <> < <= > >=
public.eql_v3_bigint_ord_opebigint_ord_opeequality, order= <> < <= > >=
public.eql_v3_bigint_ord_orebigint_ord_oreequality, order= <> < <= > >=
public.eql_v3_booleanboolean(storage only)storage
public.eql_v3_datedate(storage only)storage
public.eql_v3_date_eqdate_eqequality= <>
public.eql_v3_date_orddate_ordequality, order= <> < <= > >=
public.eql_v3_date_ord_opedate_ord_opeequality, order= <> < <= > >=
public.eql_v3_date_ord_oredate_ord_oreequality, order= <> < <= > >=
public.eql_v3_doubledouble(storage only)storage
public.eql_v3_double_eqdouble_eqequality= <>
public.eql_v3_double_orddouble_ordequality, order= <> < <= > >=
public.eql_v3_double_ord_opedouble_ord_opeequality, order= <> < <= > >=
public.eql_v3_double_ord_oredouble_ord_oreequality, order= <> < <= > >=
public.eql_v3_integerinteger(storage only)storage
public.eql_v3_integer_eqinteger_eqequality= <>
public.eql_v3_integer_ordinteger_ordequality, order= <> < <= > >=
public.eql_v3_integer_ord_opeinteger_ord_opeequality, order= <> < <= > >=
public.eql_v3_integer_ord_oreinteger_ord_oreequality, order= <> < <= > >=
eql_v3.query_jsonjsonb(storage only)json
public.eql_v3_jsonjsonb(storage only)storage
public.eql_v3_json_entryjsonb(storage only)json
public.eql_v3_json_searchjsonb(storage only)json
public.eql_v3_numericnumeric(storage only)storage
public.eql_v3_numeric_eqnumeric_eqequality= <>
public.eql_v3_numeric_ordnumeric_ordequality, order= <> < <= > >=
public.eql_v3_numeric_ord_openumeric_ord_opeequality, order= <> < <= > >=
public.eql_v3_numeric_ord_orenumeric_ord_oreequality, order= <> < <= > >=
public.eql_v3_realreal(storage only)storage
public.eql_v3_real_eqreal_eqequality= <>
public.eql_v3_real_ordreal_ordequality, order= <> < <= > >=
public.eql_v3_real_ord_opereal_ord_opeequality, order= <> < <= > >=
public.eql_v3_real_ord_orereal_ord_oreequality, order= <> < <= > >=
public.eql_v3_smallintsmallint(storage only)storage
public.eql_v3_smallint_eqsmallint_eqequality= <>
public.eql_v3_smallint_ordsmallint_ordequality, order= <> < <= > >=
public.eql_v3_smallint_ord_opesmallint_ord_opeequality, order= <> < <= > >=
public.eql_v3_smallint_ord_oresmallint_ord_oreequality, order= <> < <= > >=
public.eql_v3_texttext(storage only)storage
public.eql_v3_text_eqtext_eqequality= <>
public.eql_v3_text_matchtext_matchmatch@@
public.eql_v3_text_ordtext_ordequality, order= <> < <= > >=
public.eql_v3_text_ord_opetext_ord_opeequality, order= <> < <= > >=
public.eql_v3_text_ord_oretext_ord_oreequality, order= <> < <= > >=
public.eql_v3_text_searchtext_searchequality, order, match= <> < <= > >= @@
public.eql_v3_text_search_oretext_search_oreequality, order, match= <> < <= > >= @@
public.eql_v3_timestamptimestamp(storage only)storage
public.eql_v3_timestamp_eqtimestamp_eqequality= <>
public.eql_v3_timestamp_ordtimestamp_ordequality, order= <> < <= > >=
public.eql_v3_timestamp_ord_opetimestamp_ord_opeequality, order= <> < <= > >=
public.eql_v3_timestamp_ord_oretimestamp_ord_oreequality, order= <> < <= > >=

Functions

The public eql_v3 API — 34 functions (1209 overloads). Internal eql_v3_internal functions (780) are implementation detail and omitted.

ciphertext

Extract ciphertext (c) from a raw jsonb encrypted value.

Signature:

ciphertext(jsonb)
ParameterTypeDescription
valjsonbencrypted EQL payload

Returns: text — text The c field verbatim (base85 text).

eq

Operator wrapper for public.eql_v3_bigint_eq.

190 overloads (one per encrypted type):

eq(eql_v3_bigint_eq, eql_v3_bigint_eq)
eq(eql_v3_bigint_eq, jsonb)
eq(eql_v3_bigint_eq, query_bigint_eq)
eq(eql_v3_bigint_ord, eql_v3_bigint_ord)
eq(eql_v3_bigint_ord, jsonb)
eq(eql_v3_bigint_ord, query_bigint_ord)
eq(eql_v3_bigint_ord_ope, eql_v3_bigint_ord_ope)
eq(eql_v3_bigint_ord_ope, jsonb)
eq(eql_v3_bigint_ord_ope, query_bigint_ord_ope)
eq(eql_v3_bigint_ord_ore, eql_v3_bigint_ord_ore)
eq(eql_v3_bigint_ord_ore, jsonb)
eq(eql_v3_bigint_ord_ore, query_bigint_ord_ore)
eq(eql_v3_date_eq, eql_v3_date_eq)
eq(eql_v3_date_eq, jsonb)
eq(eql_v3_date_eq, query_date_eq)
eq(eql_v3_date_ord, eql_v3_date_ord)
eq(eql_v3_date_ord, jsonb)
eq(eql_v3_date_ord, query_date_ord)
eq(eql_v3_date_ord_ope, eql_v3_date_ord_ope)
eq(eql_v3_date_ord_ope, jsonb)
eq(eql_v3_date_ord_ope, query_date_ord_ope)
eq(eql_v3_date_ord_ore, eql_v3_date_ord_ore)
eq(eql_v3_date_ord_ore, jsonb)
eq(eql_v3_date_ord_ore, query_date_ord_ore)
eq(eql_v3_double_eq, eql_v3_double_eq)
eq(eql_v3_double_eq, jsonb)
eq(eql_v3_double_eq, query_double_eq)
eq(eql_v3_double_ord, eql_v3_double_ord)
eq(eql_v3_double_ord, jsonb)
eq(eql_v3_double_ord, query_double_ord)
eq(eql_v3_double_ord_ope, eql_v3_double_ord_ope)
eq(eql_v3_double_ord_ope, jsonb)
eq(eql_v3_double_ord_ope, query_double_ord_ope)
eq(eql_v3_double_ord_ore, eql_v3_double_ord_ore)
eq(eql_v3_double_ord_ore, jsonb)
eq(eql_v3_double_ord_ore, query_double_ord_ore)
eq(eql_v3_integer_eq, eql_v3_integer_eq)
eq(eql_v3_integer_eq, jsonb)
eq(eql_v3_integer_eq, query_integer_eq)
eq(eql_v3_integer_ord, eql_v3_integer_ord)
eq(eql_v3_integer_ord, jsonb)
eq(eql_v3_integer_ord, query_integer_ord)
eq(eql_v3_integer_ord_ope, eql_v3_integer_ord_ope)
eq(eql_v3_integer_ord_ope, jsonb)
eq(eql_v3_integer_ord_ope, query_integer_ord_ope)
eq(eql_v3_integer_ord_ore, eql_v3_integer_ord_ore)
eq(eql_v3_integer_ord_ore, jsonb)
eq(eql_v3_integer_ord_ore, query_integer_ord_ore)
eq(eql_v3_numeric_eq, eql_v3_numeric_eq)
eq(eql_v3_numeric_eq, jsonb)
eq(eql_v3_numeric_eq, query_numeric_eq)
eq(eql_v3_numeric_ord, eql_v3_numeric_ord)
eq(eql_v3_numeric_ord, jsonb)
eq(eql_v3_numeric_ord, query_numeric_ord)
eq(eql_v3_numeric_ord_ope, eql_v3_numeric_ord_ope)
eq(eql_v3_numeric_ord_ope, jsonb)
eq(eql_v3_numeric_ord_ope, query_numeric_ord_ope)
eq(eql_v3_numeric_ord_ore, eql_v3_numeric_ord_ore)
eq(eql_v3_numeric_ord_ore, jsonb)
eq(eql_v3_numeric_ord_ore, query_numeric_ord_ore)
eq(eql_v3_real_eq, eql_v3_real_eq)
eq(eql_v3_real_eq, jsonb)
eq(eql_v3_real_eq, query_real_eq)
eq(eql_v3_real_ord, eql_v3_real_ord)
eq(eql_v3_real_ord, jsonb)
eq(eql_v3_real_ord, query_real_ord)
eq(eql_v3_real_ord_ope, eql_v3_real_ord_ope)
eq(eql_v3_real_ord_ope, jsonb)
eq(eql_v3_real_ord_ope, query_real_ord_ope)
eq(eql_v3_real_ord_ore, eql_v3_real_ord_ore)
eq(eql_v3_real_ord_ore, jsonb)
eq(eql_v3_real_ord_ore, query_real_ord_ore)
eq(eql_v3_smallint_eq, eql_v3_smallint_eq)
eq(eql_v3_smallint_eq, jsonb)
eq(eql_v3_smallint_eq, query_smallint_eq)
eq(eql_v3_smallint_ord, eql_v3_smallint_ord)
eq(eql_v3_smallint_ord, jsonb)
eq(eql_v3_smallint_ord, query_smallint_ord)
eq(eql_v3_smallint_ord_ope, eql_v3_smallint_ord_ope)
eq(eql_v3_smallint_ord_ope, jsonb)
eq(eql_v3_smallint_ord_ope, query_smallint_ord_ope)
eq(eql_v3_smallint_ord_ore, eql_v3_smallint_ord_ore)
eq(eql_v3_smallint_ord_ore, jsonb)
eq(eql_v3_smallint_ord_ore, query_smallint_ord_ore)
eq(eql_v3_text_eq, eql_v3_text_eq)
eq(eql_v3_text_eq, jsonb)
eq(eql_v3_text_eq, query_text_eq)
eq(eql_v3_text_ord, eql_v3_text_ord)
eq(eql_v3_text_ord, jsonb)
eq(eql_v3_text_ord, query_text_ord)
eq(eql_v3_text_ord_ope, eql_v3_text_ord_ope)
eq(eql_v3_text_ord_ope, jsonb)
eq(eql_v3_text_ord_ope, query_text_ord_ope)
eq(eql_v3_text_ord_ore, eql_v3_text_ord_ore)
eq(eql_v3_text_ord_ore, jsonb)
eq(eql_v3_text_ord_ore, query_text_ord_ore)
eq(eql_v3_text_search, eql_v3_text_search)
eq(eql_v3_text_search, jsonb)
eq(eql_v3_text_search, query_text_search)
eq(eql_v3_text_search_ore, eql_v3_text_search_ore)
eq(eql_v3_text_search_ore, jsonb)
eq(eql_v3_text_search_ore, query_text_search_ore)
eq(eql_v3_timestamp_eq, eql_v3_timestamp_eq)
eq(eql_v3_timestamp_eq, jsonb)
eq(eql_v3_timestamp_eq, query_timestamp_eq)
eq(eql_v3_timestamp_ord, eql_v3_timestamp_ord)
eq(eql_v3_timestamp_ord, jsonb)
eq(eql_v3_timestamp_ord, query_timestamp_ord)
eq(eql_v3_timestamp_ord_ope, eql_v3_timestamp_ord_ope)
eq(eql_v3_timestamp_ord_ope, jsonb)
eq(eql_v3_timestamp_ord_ope, query_timestamp_ord_ope)
eq(eql_v3_timestamp_ord_ore, eql_v3_timestamp_ord_ore)
eq(eql_v3_timestamp_ord_ore, jsonb)
eq(eql_v3_timestamp_ord_ore, query_timestamp_ord_ore)
eq(jsonb, eql_v3_bigint_eq)
eq(jsonb, eql_v3_bigint_ord)
eq(jsonb, eql_v3_bigint_ord_ope)
eq(jsonb, eql_v3_bigint_ord_ore)
eq(jsonb, eql_v3_date_eq)
eq(jsonb, eql_v3_date_ord)
eq(jsonb, eql_v3_date_ord_ope)
eq(jsonb, eql_v3_date_ord_ore)
eq(jsonb, eql_v3_double_eq)
eq(jsonb, eql_v3_double_ord)
eq(jsonb, eql_v3_double_ord_ope)
eq(jsonb, eql_v3_double_ord_ore)
eq(jsonb, eql_v3_integer_eq)
eq(jsonb, eql_v3_integer_ord)
eq(jsonb, eql_v3_integer_ord_ope)
eq(jsonb, eql_v3_integer_ord_ore)
eq(jsonb, eql_v3_numeric_eq)
eq(jsonb, eql_v3_numeric_ord)
eq(jsonb, eql_v3_numeric_ord_ope)
eq(jsonb, eql_v3_numeric_ord_ore)
eq(jsonb, eql_v3_real_eq)
eq(jsonb, eql_v3_real_ord)
eq(jsonb, eql_v3_real_ord_ope)
eq(jsonb, eql_v3_real_ord_ore)
eq(jsonb, eql_v3_smallint_eq)
eq(jsonb, eql_v3_smallint_ord)
eq(jsonb, eql_v3_smallint_ord_ope)
eq(jsonb, eql_v3_smallint_ord_ore)
eq(jsonb, eql_v3_text_eq)
eq(jsonb, eql_v3_text_ord)
eq(jsonb, eql_v3_text_ord_ope)
eq(jsonb, eql_v3_text_ord_ore)
eq(jsonb, eql_v3_text_search)
eq(jsonb, eql_v3_text_search_ore)
eq(jsonb, eql_v3_timestamp_eq)
eq(jsonb, eql_v3_timestamp_ord)
eq(jsonb, eql_v3_timestamp_ord_ope)
eq(jsonb, eql_v3_timestamp_ord_ore)
eq(query_bigint_eq, eql_v3_bigint_eq)
eq(query_bigint_ord, eql_v3_bigint_ord)
eq(query_bigint_ord_ope, eql_v3_bigint_ord_ope)
eq(query_bigint_ord_ore, eql_v3_bigint_ord_ore)
eq(query_date_eq, eql_v3_date_eq)
eq(query_date_ord, eql_v3_date_ord)
eq(query_date_ord_ope, eql_v3_date_ord_ope)
eq(query_date_ord_ore, eql_v3_date_ord_ore)
eq(query_double_eq, eql_v3_double_eq)
eq(query_double_ord, eql_v3_double_ord)
eq(query_double_ord_ope, eql_v3_double_ord_ope)
eq(query_double_ord_ore, eql_v3_double_ord_ore)
eq(query_integer_eq, eql_v3_integer_eq)
eq(query_integer_ord, eql_v3_integer_ord)
eq(query_integer_ord_ope, eql_v3_integer_ord_ope)
eq(query_integer_ord_ore, eql_v3_integer_ord_ore)
eq(query_numeric_eq, eql_v3_numeric_eq)
eq(query_numeric_ord, eql_v3_numeric_ord)
eq(query_numeric_ord_ope, eql_v3_numeric_ord_ope)
eq(query_numeric_ord_ore, eql_v3_numeric_ord_ore)
eq(query_real_eq, eql_v3_real_eq)
eq(query_real_ord, eql_v3_real_ord)
eq(query_real_ord_ope, eql_v3_real_ord_ope)
eq(query_real_ord_ore, eql_v3_real_ord_ore)
eq(query_smallint_eq, eql_v3_smallint_eq)
eq(query_smallint_ord, eql_v3_smallint_ord)
eq(query_smallint_ord_ope, eql_v3_smallint_ord_ope)
eq(query_smallint_ord_ore, eql_v3_smallint_ord_ore)
eq(query_text_eq, eql_v3_text_eq)
eq(query_text_ord, eql_v3_text_ord)
eq(query_text_ord_ope, eql_v3_text_ord_ope)
eq(query_text_ord_ore, eql_v3_text_ord_ore)
eq(query_text_search, eql_v3_text_search)
eq(query_text_search_ore, eql_v3_text_search_ore)
eq(query_timestamp_eq, eql_v3_timestamp_eq)
eq(query_timestamp_ord, eql_v3_timestamp_ord)
eq(query_timestamp_ord_ope, eql_v3_timestamp_ord_ope)
eq(query_timestamp_ord_ore, eql_v3_timestamp_ord_ore)
ParameterTypeDescription
a public.eql_v3_bigint_eq
b public.eql_v3_bigint_eq

Returns: boolean — boolean

eq_term

Index extractor for public.eql_v3_bigint_eq.

29 overloads (one per encrypted type):

eq_term(eql_v3_bigint_eq)
eq_term(eql_v3_date_eq)
eq_term(eql_v3_double_eq)
eq_term(eql_v3_integer_eq)
eq_term(eql_v3_json_entry)
eq_term(eql_v3_numeric_eq)
eq_term(eql_v3_real_eq)
eq_term(eql_v3_smallint_eq)
eq_term(eql_v3_text_eq)
eq_term(eql_v3_text_ord)
eq_term(eql_v3_text_ord_ope)
eq_term(eql_v3_text_ord_ore)
eq_term(eql_v3_text_search)
eq_term(eql_v3_text_search_ore)
eq_term(eql_v3_timestamp_eq)
eq_term(query_bigint_eq)
eq_term(query_date_eq)
eq_term(query_double_eq)
eq_term(query_integer_eq)
eq_term(query_numeric_eq)
eq_term(query_real_eq)
eq_term(query_smallint_eq)
eq_term(query_text_eq)
eq_term(query_text_ord)
eq_term(query_text_ord_ope)
eq_term(query_text_ord_ore)
eq_term(query_text_search)
eq_term(query_text_search_ore)
eq_term(query_timestamp_eq)
ParameterTypeDescription
a public.eql_v3_bigint_eq

Returns: eql_v3_internal.hmac_256 — eql_v3_internal.hmac_256

eql_v3_is_valid_ste_vec_document_payload

Validate a root SteVec document payload.

Signature:

eql_v3_is_valid_ste_vec_document_payload(jsonb)
ParameterTypeDescription
valjsonb

Returns: boolean

eql_v3_is_valid_ste_vec_entry_payload

Validate a single SteVec entry payload.

Signature:

eql_v3_is_valid_ste_vec_entry_payload(jsonb)
ParameterTypeDescription
valjsonb

Returns: boolean

eql_v3_is_valid_ste_vec_query_payload

Validate a SteVec containment query payload.

Signature:

eql_v3_is_valid_ste_vec_query_payload(jsonb)
ParameterTypeDescription
valjsonb

Returns: boolean

grouped_value

Return a representative (first non-null) encrypted value per group.

Returns the first non-null value encountered within a GROUP BY group. Its primary use is projecting an encrypted column while grouping by that column's equality term (GROUP BY eql_v3.eq_term(col)), where PostgreSQL will not let you SELECT col directly — see the file header for the worked example. Accepts any eql_v3 encrypted-domain value (each is a jsonb-backed domain) and returns it unchanged, performing no decryption or comparison. PARALLEL SAFE with a combine function, so it works under partial/parallel aggregation on large GROUP BY workloads.

SELECT eql_v3.grouped_value(encrypted_foo) AS encrypted_foo, count(*) FROM some_table GROUP BY eql_v3.eq_term(encrypted_foo);

Signature:

grouped_value(jsonb)
ParameterTypeDescription
inputjsonbEncrypted values to aggregate.

Returns: jsonb — jsonb The first non-null value in the group.

gt

Operator wrapper for public.eql_v3_bigint_ord.

159 overloads (one per encrypted type):

gt(eql_v3_bigint_ord, eql_v3_bigint_ord)
gt(eql_v3_bigint_ord, jsonb)
gt(eql_v3_bigint_ord, query_bigint_ord)
gt(eql_v3_bigint_ord_ope, eql_v3_bigint_ord_ope)
gt(eql_v3_bigint_ord_ope, jsonb)
gt(eql_v3_bigint_ord_ope, query_bigint_ord_ope)
gt(eql_v3_bigint_ord_ore, eql_v3_bigint_ord_ore)
gt(eql_v3_bigint_ord_ore, jsonb)
gt(eql_v3_bigint_ord_ore, query_bigint_ord_ore)
gt(eql_v3_date_ord, eql_v3_date_ord)
gt(eql_v3_date_ord, jsonb)
gt(eql_v3_date_ord, query_date_ord)
gt(eql_v3_date_ord_ope, eql_v3_date_ord_ope)
gt(eql_v3_date_ord_ope, jsonb)
gt(eql_v3_date_ord_ope, query_date_ord_ope)
gt(eql_v3_date_ord_ore, eql_v3_date_ord_ore)
gt(eql_v3_date_ord_ore, jsonb)
gt(eql_v3_date_ord_ore, query_date_ord_ore)
gt(eql_v3_double_ord, eql_v3_double_ord)
gt(eql_v3_double_ord, jsonb)
gt(eql_v3_double_ord, query_double_ord)
gt(eql_v3_double_ord_ope, eql_v3_double_ord_ope)
gt(eql_v3_double_ord_ope, jsonb)
gt(eql_v3_double_ord_ope, query_double_ord_ope)
gt(eql_v3_double_ord_ore, eql_v3_double_ord_ore)
gt(eql_v3_double_ord_ore, jsonb)
gt(eql_v3_double_ord_ore, query_double_ord_ore)
gt(eql_v3_integer_ord, eql_v3_integer_ord)
gt(eql_v3_integer_ord, jsonb)
gt(eql_v3_integer_ord, query_integer_ord)
gt(eql_v3_integer_ord_ope, eql_v3_integer_ord_ope)
gt(eql_v3_integer_ord_ope, jsonb)
gt(eql_v3_integer_ord_ope, query_integer_ord_ope)
gt(eql_v3_integer_ord_ore, eql_v3_integer_ord_ore)
gt(eql_v3_integer_ord_ore, jsonb)
gt(eql_v3_integer_ord_ore, query_integer_ord_ore)
gt(eql_v3_json_entry, query_bigint_ord)
gt(eql_v3_json_entry, query_double_ord)
gt(eql_v3_json_entry, query_integer_ord)
gt(eql_v3_json_entry, query_numeric_ord)
gt(eql_v3_json_entry, query_real_ord)
gt(eql_v3_json_entry, query_smallint_ord)
gt(eql_v3_json_entry, query_text_ord)
gt(eql_v3_numeric_ord, eql_v3_numeric_ord)
gt(eql_v3_numeric_ord, jsonb)
gt(eql_v3_numeric_ord, query_numeric_ord)
gt(eql_v3_numeric_ord_ope, eql_v3_numeric_ord_ope)
gt(eql_v3_numeric_ord_ope, jsonb)
gt(eql_v3_numeric_ord_ope, query_numeric_ord_ope)
gt(eql_v3_numeric_ord_ore, eql_v3_numeric_ord_ore)
gt(eql_v3_numeric_ord_ore, jsonb)
gt(eql_v3_numeric_ord_ore, query_numeric_ord_ore)
gt(eql_v3_real_ord, eql_v3_real_ord)
gt(eql_v3_real_ord, jsonb)
gt(eql_v3_real_ord, query_real_ord)
gt(eql_v3_real_ord_ope, eql_v3_real_ord_ope)
gt(eql_v3_real_ord_ope, jsonb)
gt(eql_v3_real_ord_ope, query_real_ord_ope)
gt(eql_v3_real_ord_ore, eql_v3_real_ord_ore)
gt(eql_v3_real_ord_ore, jsonb)
gt(eql_v3_real_ord_ore, query_real_ord_ore)
gt(eql_v3_smallint_ord, eql_v3_smallint_ord)
gt(eql_v3_smallint_ord, jsonb)
gt(eql_v3_smallint_ord, query_smallint_ord)
gt(eql_v3_smallint_ord_ope, eql_v3_smallint_ord_ope)
gt(eql_v3_smallint_ord_ope, jsonb)
gt(eql_v3_smallint_ord_ope, query_smallint_ord_ope)
gt(eql_v3_smallint_ord_ore, eql_v3_smallint_ord_ore)
gt(eql_v3_smallint_ord_ore, jsonb)
gt(eql_v3_smallint_ord_ore, query_smallint_ord_ore)
gt(eql_v3_text_ord, eql_v3_text_ord)
gt(eql_v3_text_ord, jsonb)
gt(eql_v3_text_ord, query_text_ord)
gt(eql_v3_text_ord_ope, eql_v3_text_ord_ope)
gt(eql_v3_text_ord_ope, jsonb)
gt(eql_v3_text_ord_ope, query_text_ord_ope)
gt(eql_v3_text_ord_ore, eql_v3_text_ord_ore)
gt(eql_v3_text_ord_ore, jsonb)
gt(eql_v3_text_ord_ore, query_text_ord_ore)
gt(eql_v3_text_search, eql_v3_text_search)
gt(eql_v3_text_search, jsonb)
gt(eql_v3_text_search, query_text_search)
gt(eql_v3_text_search_ore, eql_v3_text_search_ore)
gt(eql_v3_text_search_ore, jsonb)
gt(eql_v3_text_search_ore, query_text_search_ore)
gt(eql_v3_timestamp_ord, eql_v3_timestamp_ord)
gt(eql_v3_timestamp_ord, jsonb)
gt(eql_v3_timestamp_ord, query_timestamp_ord)
gt(eql_v3_timestamp_ord_ope, eql_v3_timestamp_ord_ope)
gt(eql_v3_timestamp_ord_ope, jsonb)
gt(eql_v3_timestamp_ord_ope, query_timestamp_ord_ope)
gt(eql_v3_timestamp_ord_ore, eql_v3_timestamp_ord_ore)
gt(eql_v3_timestamp_ord_ore, jsonb)
gt(eql_v3_timestamp_ord_ore, query_timestamp_ord_ore)
gt(jsonb, eql_v3_bigint_ord)
gt(jsonb, eql_v3_bigint_ord_ope)
gt(jsonb, eql_v3_bigint_ord_ore)
gt(jsonb, eql_v3_date_ord)
gt(jsonb, eql_v3_date_ord_ope)
gt(jsonb, eql_v3_date_ord_ore)
gt(jsonb, eql_v3_double_ord)
gt(jsonb, eql_v3_double_ord_ope)
gt(jsonb, eql_v3_double_ord_ore)
gt(jsonb, eql_v3_integer_ord)
gt(jsonb, eql_v3_integer_ord_ope)
gt(jsonb, eql_v3_integer_ord_ore)
gt(jsonb, eql_v3_numeric_ord)
gt(jsonb, eql_v3_numeric_ord_ope)
gt(jsonb, eql_v3_numeric_ord_ore)
gt(jsonb, eql_v3_real_ord)
gt(jsonb, eql_v3_real_ord_ope)
gt(jsonb, eql_v3_real_ord_ore)
gt(jsonb, eql_v3_smallint_ord)
gt(jsonb, eql_v3_smallint_ord_ope)
gt(jsonb, eql_v3_smallint_ord_ore)
gt(jsonb, eql_v3_text_ord)
gt(jsonb, eql_v3_text_ord_ope)
gt(jsonb, eql_v3_text_ord_ore)
gt(jsonb, eql_v3_text_search)
gt(jsonb, eql_v3_text_search_ore)
gt(jsonb, eql_v3_timestamp_ord)
gt(jsonb, eql_v3_timestamp_ord_ope)
gt(jsonb, eql_v3_timestamp_ord_ore)
gt(query_bigint_ord, eql_v3_bigint_ord)
gt(query_bigint_ord, eql_v3_json_entry)
gt(query_bigint_ord_ope, eql_v3_bigint_ord_ope)
gt(query_bigint_ord_ore, eql_v3_bigint_ord_ore)
gt(query_date_ord, eql_v3_date_ord)
gt(query_date_ord_ope, eql_v3_date_ord_ope)
gt(query_date_ord_ore, eql_v3_date_ord_ore)
gt(query_double_ord, eql_v3_double_ord)
gt(query_double_ord, eql_v3_json_entry)
gt(query_double_ord_ope, eql_v3_double_ord_ope)
gt(query_double_ord_ore, eql_v3_double_ord_ore)
gt(query_integer_ord, eql_v3_integer_ord)
gt(query_integer_ord, eql_v3_json_entry)
gt(query_integer_ord_ope, eql_v3_integer_ord_ope)
gt(query_integer_ord_ore, eql_v3_integer_ord_ore)
gt(query_numeric_ord, eql_v3_json_entry)
gt(query_numeric_ord, eql_v3_numeric_ord)
gt(query_numeric_ord_ope, eql_v3_numeric_ord_ope)
gt(query_numeric_ord_ore, eql_v3_numeric_ord_ore)
gt(query_real_ord, eql_v3_json_entry)
gt(query_real_ord, eql_v3_real_ord)
gt(query_real_ord_ope, eql_v3_real_ord_ope)
gt(query_real_ord_ore, eql_v3_real_ord_ore)
gt(query_smallint_ord, eql_v3_json_entry)
gt(query_smallint_ord, eql_v3_smallint_ord)
gt(query_smallint_ord_ope, eql_v3_smallint_ord_ope)
gt(query_smallint_ord_ore, eql_v3_smallint_ord_ore)
gt(query_text_ord, eql_v3_json_entry)
gt(query_text_ord, eql_v3_text_ord)
gt(query_text_ord_ope, eql_v3_text_ord_ope)
gt(query_text_ord_ore, eql_v3_text_ord_ore)
gt(query_text_search, eql_v3_text_search)
gt(query_text_search_ore, eql_v3_text_search_ore)
gt(query_timestamp_ord, eql_v3_timestamp_ord)
gt(query_timestamp_ord_ope, eql_v3_timestamp_ord_ope)
gt(query_timestamp_ord_ore, eql_v3_timestamp_ord_ore)
ParameterTypeDescription
a public.eql_v3_bigint_ord
b public.eql_v3_bigint_ord

Returns: boolean — boolean

gte

Operator wrapper for public.eql_v3_bigint_ord.

159 overloads (one per encrypted type):

gte(eql_v3_bigint_ord, eql_v3_bigint_ord)
gte(eql_v3_bigint_ord, jsonb)
gte(eql_v3_bigint_ord, query_bigint_ord)
gte(eql_v3_bigint_ord_ope, eql_v3_bigint_ord_ope)
gte(eql_v3_bigint_ord_ope, jsonb)
gte(eql_v3_bigint_ord_ope, query_bigint_ord_ope)
gte(eql_v3_bigint_ord_ore, eql_v3_bigint_ord_ore)
gte(eql_v3_bigint_ord_ore, jsonb)
gte(eql_v3_bigint_ord_ore, query_bigint_ord_ore)
gte(eql_v3_date_ord, eql_v3_date_ord)
gte(eql_v3_date_ord, jsonb)
gte(eql_v3_date_ord, query_date_ord)
gte(eql_v3_date_ord_ope, eql_v3_date_ord_ope)
gte(eql_v3_date_ord_ope, jsonb)
gte(eql_v3_date_ord_ope, query_date_ord_ope)
gte(eql_v3_date_ord_ore, eql_v3_date_ord_ore)
gte(eql_v3_date_ord_ore, jsonb)
gte(eql_v3_date_ord_ore, query_date_ord_ore)
gte(eql_v3_double_ord, eql_v3_double_ord)
gte(eql_v3_double_ord, jsonb)
gte(eql_v3_double_ord, query_double_ord)
gte(eql_v3_double_ord_ope, eql_v3_double_ord_ope)
gte(eql_v3_double_ord_ope, jsonb)
gte(eql_v3_double_ord_ope, query_double_ord_ope)
gte(eql_v3_double_ord_ore, eql_v3_double_ord_ore)
gte(eql_v3_double_ord_ore, jsonb)
gte(eql_v3_double_ord_ore, query_double_ord_ore)
gte(eql_v3_integer_ord, eql_v3_integer_ord)
gte(eql_v3_integer_ord, jsonb)
gte(eql_v3_integer_ord, query_integer_ord)
gte(eql_v3_integer_ord_ope, eql_v3_integer_ord_ope)
gte(eql_v3_integer_ord_ope, jsonb)
gte(eql_v3_integer_ord_ope, query_integer_ord_ope)
gte(eql_v3_integer_ord_ore, eql_v3_integer_ord_ore)
gte(eql_v3_integer_ord_ore, jsonb)
gte(eql_v3_integer_ord_ore, query_integer_ord_ore)
gte(eql_v3_json_entry, query_bigint_ord)
gte(eql_v3_json_entry, query_double_ord)
gte(eql_v3_json_entry, query_integer_ord)
gte(eql_v3_json_entry, query_numeric_ord)
gte(eql_v3_json_entry, query_real_ord)
gte(eql_v3_json_entry, query_smallint_ord)
gte(eql_v3_json_entry, query_text_ord)
gte(eql_v3_numeric_ord, eql_v3_numeric_ord)
gte(eql_v3_numeric_ord, jsonb)
gte(eql_v3_numeric_ord, query_numeric_ord)
gte(eql_v3_numeric_ord_ope, eql_v3_numeric_ord_ope)
gte(eql_v3_numeric_ord_ope, jsonb)
gte(eql_v3_numeric_ord_ope, query_numeric_ord_ope)
gte(eql_v3_numeric_ord_ore, eql_v3_numeric_ord_ore)
gte(eql_v3_numeric_ord_ore, jsonb)
gte(eql_v3_numeric_ord_ore, query_numeric_ord_ore)
gte(eql_v3_real_ord, eql_v3_real_ord)
gte(eql_v3_real_ord, jsonb)
gte(eql_v3_real_ord, query_real_ord)
gte(eql_v3_real_ord_ope, eql_v3_real_ord_ope)
gte(eql_v3_real_ord_ope, jsonb)
gte(eql_v3_real_ord_ope, query_real_ord_ope)
gte(eql_v3_real_ord_ore, eql_v3_real_ord_ore)
gte(eql_v3_real_ord_ore, jsonb)
gte(eql_v3_real_ord_ore, query_real_ord_ore)
gte(eql_v3_smallint_ord, eql_v3_smallint_ord)
gte(eql_v3_smallint_ord, jsonb)
gte(eql_v3_smallint_ord, query_smallint_ord)
gte(eql_v3_smallint_ord_ope, eql_v3_smallint_ord_ope)
gte(eql_v3_smallint_ord_ope, jsonb)
gte(eql_v3_smallint_ord_ope, query_smallint_ord_ope)
gte(eql_v3_smallint_ord_ore, eql_v3_smallint_ord_ore)
gte(eql_v3_smallint_ord_ore, jsonb)
gte(eql_v3_smallint_ord_ore, query_smallint_ord_ore)
gte(eql_v3_text_ord, eql_v3_text_ord)
gte(eql_v3_text_ord, jsonb)
gte(eql_v3_text_ord, query_text_ord)
gte(eql_v3_text_ord_ope, eql_v3_text_ord_ope)
gte(eql_v3_text_ord_ope, jsonb)
gte(eql_v3_text_ord_ope, query_text_ord_ope)
gte(eql_v3_text_ord_ore, eql_v3_text_ord_ore)
gte(eql_v3_text_ord_ore, jsonb)
gte(eql_v3_text_ord_ore, query_text_ord_ore)
gte(eql_v3_text_search, eql_v3_text_search)
gte(eql_v3_text_search, jsonb)
gte(eql_v3_text_search, query_text_search)
gte(eql_v3_text_search_ore, eql_v3_text_search_ore)
gte(eql_v3_text_search_ore, jsonb)
gte(eql_v3_text_search_ore, query_text_search_ore)
gte(eql_v3_timestamp_ord, eql_v3_timestamp_ord)
gte(eql_v3_timestamp_ord, jsonb)
gte(eql_v3_timestamp_ord, query_timestamp_ord)
gte(eql_v3_timestamp_ord_ope, eql_v3_timestamp_ord_ope)
gte(eql_v3_timestamp_ord_ope, jsonb)
gte(eql_v3_timestamp_ord_ope, query_timestamp_ord_ope)
gte(eql_v3_timestamp_ord_ore, eql_v3_timestamp_ord_ore)
gte(eql_v3_timestamp_ord_ore, jsonb)
gte(eql_v3_timestamp_ord_ore, query_timestamp_ord_ore)
gte(jsonb, eql_v3_bigint_ord)
gte(jsonb, eql_v3_bigint_ord_ope)
gte(jsonb, eql_v3_bigint_ord_ore)
gte(jsonb, eql_v3_date_ord)
gte(jsonb, eql_v3_date_ord_ope)
gte(jsonb, eql_v3_date_ord_ore)
gte(jsonb, eql_v3_double_ord)
gte(jsonb, eql_v3_double_ord_ope)
gte(jsonb, eql_v3_double_ord_ore)
gte(jsonb, eql_v3_integer_ord)
gte(jsonb, eql_v3_integer_ord_ope)
gte(jsonb, eql_v3_integer_ord_ore)
gte(jsonb, eql_v3_numeric_ord)
gte(jsonb, eql_v3_numeric_ord_ope)
gte(jsonb, eql_v3_numeric_ord_ore)
gte(jsonb, eql_v3_real_ord)
gte(jsonb, eql_v3_real_ord_ope)
gte(jsonb, eql_v3_real_ord_ore)
gte(jsonb, eql_v3_smallint_ord)
gte(jsonb, eql_v3_smallint_ord_ope)
gte(jsonb, eql_v3_smallint_ord_ore)
gte(jsonb, eql_v3_text_ord)
gte(jsonb, eql_v3_text_ord_ope)
gte(jsonb, eql_v3_text_ord_ore)
gte(jsonb, eql_v3_text_search)
gte(jsonb, eql_v3_text_search_ore)
gte(jsonb, eql_v3_timestamp_ord)
gte(jsonb, eql_v3_timestamp_ord_ope)
gte(jsonb, eql_v3_timestamp_ord_ore)
gte(query_bigint_ord, eql_v3_bigint_ord)
gte(query_bigint_ord, eql_v3_json_entry)
gte(query_bigint_ord_ope, eql_v3_bigint_ord_ope)
gte(query_bigint_ord_ore, eql_v3_bigint_ord_ore)
gte(query_date_ord, eql_v3_date_ord)
gte(query_date_ord_ope, eql_v3_date_ord_ope)
gte(query_date_ord_ore, eql_v3_date_ord_ore)
gte(query_double_ord, eql_v3_double_ord)
gte(query_double_ord, eql_v3_json_entry)
gte(query_double_ord_ope, eql_v3_double_ord_ope)
gte(query_double_ord_ore, eql_v3_double_ord_ore)
gte(query_integer_ord, eql_v3_integer_ord)
gte(query_integer_ord, eql_v3_json_entry)
gte(query_integer_ord_ope, eql_v3_integer_ord_ope)
gte(query_integer_ord_ore, eql_v3_integer_ord_ore)
gte(query_numeric_ord, eql_v3_json_entry)
gte(query_numeric_ord, eql_v3_numeric_ord)
gte(query_numeric_ord_ope, eql_v3_numeric_ord_ope)
gte(query_numeric_ord_ore, eql_v3_numeric_ord_ore)
gte(query_real_ord, eql_v3_json_entry)
gte(query_real_ord, eql_v3_real_ord)
gte(query_real_ord_ope, eql_v3_real_ord_ope)
gte(query_real_ord_ore, eql_v3_real_ord_ore)
gte(query_smallint_ord, eql_v3_json_entry)
gte(query_smallint_ord, eql_v3_smallint_ord)
gte(query_smallint_ord_ope, eql_v3_smallint_ord_ope)
gte(query_smallint_ord_ore, eql_v3_smallint_ord_ore)
gte(query_text_ord, eql_v3_json_entry)
gte(query_text_ord, eql_v3_text_ord)
gte(query_text_ord_ope, eql_v3_text_ord_ope)
gte(query_text_ord_ore, eql_v3_text_ord_ore)
gte(query_text_search, eql_v3_text_search)
gte(query_text_search_ore, eql_v3_text_search_ore)
gte(query_timestamp_ord, eql_v3_timestamp_ord)
gte(query_timestamp_ord_ope, eql_v3_timestamp_ord_ope)
gte(query_timestamp_ord_ore, eql_v3_timestamp_ord_ore)
ParameterTypeDescription
a public.eql_v3_bigint_ord
b public.eql_v3_bigint_ord

Returns: boolean — boolean

jsonb_array

Extract deterministic containment fields (s) per sv element.

Excludes non-deterministic ciphertext so PostgreSQL's native jsonb @> can compare for containment. Use for GIN indexes and containment queries. Exact and structural containment are selector-set containment, so ordering terms are deliberately excluded.

Signature:

jsonb_array(jsonb)
ParameterTypeDescription
valjsonbencrypted EQL payload

Returns: jsonb[] — jsonb[] Array of objects with only deterministic fields.

jsonb_array_elements

Extract elements of an encrypted JSONB array as rows.

Signature:

jsonb_array_elements(jsonb)
ParameterTypeDescription
valjsonbencrypted EQL payload (must have a flag true).

Returns: SETOF — SETOF public.eql_v3_json_entry One row per element (metadata preserved).

jsonb_array_length

Get the length of an encrypted JSONB array.

Signature:

jsonb_array_length(jsonb)
ParameterTypeDescription
valjsonbencrypted EQL payload (must have a flag true).

Returns: integer — integer Number of elements.

jsonb_contained_by

GIN-indexable "is contained by" check.

Signature:

jsonb_contained_by(jsonb, jsonb)
ParameterTypeDescription
ajsonbPayload to check.
bjsonbContainer payload.

Returns: boolean — boolean True if all elements of a are contained in b.

jsonb_contains

GIN-indexable containment check: does a contain all of b?

Signature:

jsonb_contains(jsonb, jsonb)
ParameterTypeDescription
ajsonbContainer payload.
bjsonbSearch payload.

Returns: boolean — boolean True if a contains all deterministic elements of b.

jsonb_path_exists

Check if a selector path exists in encrypted JSONB.

Signature:

jsonb_path_exists(jsonb, text)
ParameterTypeDescription
valjsonbencrypted EQL payload.
selectortextSelector hash to test.

Returns: boolean — boolean True if a matching element exists.

jsonb_path_query

Query encrypted JSONB for sv elements matching selector.

Returns one jsonb_entry row per matching encrypted element. Returns empty set on no match. It deliberately does not wrap multiple matches as an public.eql_v3_json_search document, because the root document domain requires an sv array and single leaves belong to public.eql_v3_json_entry.

Signature:

jsonb_path_query(jsonb, text)
ParameterTypeDescription
valjsonbencrypted EQL payload with sv.
selectortextSelector hash (s value).

Returns: SETOF — SETOF public.eql_v3_json_entry Matching encrypted entries.

jsonb_path_query_first

Get the first sv element matching selector, or NULL.

Signature:

jsonb_path_query_first(jsonb, text)
ParameterTypeDescription
valjsonbencrypted EQL payload.
selectortextSelector hash to match.

Returns: public.eql_v3_json_entry — public.eql_v3_json_entry First matching element or NULL.

lints

EQL lint: detect non-inlinable operator implementation functions.

Returns one row per violation found in the installed eql_v3 surface. The Postgres planner can only inline a function during index matching when:

LANGUAGE sql (plpgsql / C / etc. cannot be inlined)IMMUTABLE or STABLE volatility (VOLATILE cannot be inlined into index expressions)No SET clauses (e.g. SET search_path = ...)Not SECURITY DEFINERSingle-statement SELECT body

Severity: error — fixable, blocks index matching, ship-blocking. warning — likely-fixable, may not block matching but signals intent. info — observational; useful for review, not a defect on its own.

Categories: inlinability_language — implementation function isn't LANGUAGE sql. inlinability_volatility — implementation function is VOLATILE. inlinability_set_clause — implementation function has a SET clause. inlinability_secdef — implementation function is SECURITY DEFINER. inlinability_transitive — implementation function is itself inlinable but its body invokes a non-inlinable function (depth 1; the planner can't peek through that boundary). blocker_language — encrypted-domain blocker is not LANGUAGE plpgsql. The planner can inline / elide a LANGUAGE sql body when the result is provably unused, silently bypassing the RAISE that the blocker exists to perform. blocker_strict — encrypted-domain blocker is STRICT. PostgreSQL skips the body and returns NULL on NULL arguments, silently bypassing the RAISE. domain_over_domain — an eql_v3 encrypted domain is derived from another encrypted domain rather than jsonb. Operators resolve against the ultimate base type, so the derived domain does not inherit the base domain's blocker surface. domain_opclass — an operator class is declared FOR TYPE on an eql_v3 encrypted domain. Opclasses on domains bypass operator resolution; use a functional index on the extractor instead. schema_placement — a naked composite or enum TYPE lives in the public eql_v3 schema. Internal index-term types (e.g. ore_block_256_term) belong in eql_v3_internal; a composite/enum in eql_v3 clutters the Supabase Table Builder type picker, which the schema split exists to prevent. Move it to eql_v3_internal.

SELECT severity, category, object_name, message FROM eql_v3.lints() WHERE severity = 'error' ORDER BY category, object_name;

Signature:

lints()

Returns: TABLE — SETOF record (severity text, category text, object_name text, message text)

lt

Operator wrapper for public.eql_v3_bigint_ord.

159 overloads (one per encrypted type):

lt(eql_v3_bigint_ord, eql_v3_bigint_ord)
lt(eql_v3_bigint_ord, jsonb)
lt(eql_v3_bigint_ord, query_bigint_ord)
lt(eql_v3_bigint_ord_ope, eql_v3_bigint_ord_ope)
lt(eql_v3_bigint_ord_ope, jsonb)
lt(eql_v3_bigint_ord_ope, query_bigint_ord_ope)
lt(eql_v3_bigint_ord_ore, eql_v3_bigint_ord_ore)
lt(eql_v3_bigint_ord_ore, jsonb)
lt(eql_v3_bigint_ord_ore, query_bigint_ord_ore)
lt(eql_v3_date_ord, eql_v3_date_ord)
lt(eql_v3_date_ord, jsonb)
lt(eql_v3_date_ord, query_date_ord)
lt(eql_v3_date_ord_ope, eql_v3_date_ord_ope)
lt(eql_v3_date_ord_ope, jsonb)
lt(eql_v3_date_ord_ope, query_date_ord_ope)
lt(eql_v3_date_ord_ore, eql_v3_date_ord_ore)
lt(eql_v3_date_ord_ore, jsonb)
lt(eql_v3_date_ord_ore, query_date_ord_ore)
lt(eql_v3_double_ord, eql_v3_double_ord)
lt(eql_v3_double_ord, jsonb)
lt(eql_v3_double_ord, query_double_ord)
lt(eql_v3_double_ord_ope, eql_v3_double_ord_ope)
lt(eql_v3_double_ord_ope, jsonb)
lt(eql_v3_double_ord_ope, query_double_ord_ope)
lt(eql_v3_double_ord_ore, eql_v3_double_ord_ore)
lt(eql_v3_double_ord_ore, jsonb)
lt(eql_v3_double_ord_ore, query_double_ord_ore)
lt(eql_v3_integer_ord, eql_v3_integer_ord)
lt(eql_v3_integer_ord, jsonb)
lt(eql_v3_integer_ord, query_integer_ord)
lt(eql_v3_integer_ord_ope, eql_v3_integer_ord_ope)
lt(eql_v3_integer_ord_ope, jsonb)
lt(eql_v3_integer_ord_ope, query_integer_ord_ope)
lt(eql_v3_integer_ord_ore, eql_v3_integer_ord_ore)
lt(eql_v3_integer_ord_ore, jsonb)
lt(eql_v3_integer_ord_ore, query_integer_ord_ore)
lt(eql_v3_json_entry, query_bigint_ord)
lt(eql_v3_json_entry, query_double_ord)
lt(eql_v3_json_entry, query_integer_ord)
lt(eql_v3_json_entry, query_numeric_ord)
lt(eql_v3_json_entry, query_real_ord)
lt(eql_v3_json_entry, query_smallint_ord)
lt(eql_v3_json_entry, query_text_ord)
lt(eql_v3_numeric_ord, eql_v3_numeric_ord)
lt(eql_v3_numeric_ord, jsonb)
lt(eql_v3_numeric_ord, query_numeric_ord)
lt(eql_v3_numeric_ord_ope, eql_v3_numeric_ord_ope)
lt(eql_v3_numeric_ord_ope, jsonb)
lt(eql_v3_numeric_ord_ope, query_numeric_ord_ope)
lt(eql_v3_numeric_ord_ore, eql_v3_numeric_ord_ore)
lt(eql_v3_numeric_ord_ore, jsonb)
lt(eql_v3_numeric_ord_ore, query_numeric_ord_ore)
lt(eql_v3_real_ord, eql_v3_real_ord)
lt(eql_v3_real_ord, jsonb)
lt(eql_v3_real_ord, query_real_ord)
lt(eql_v3_real_ord_ope, eql_v3_real_ord_ope)
lt(eql_v3_real_ord_ope, jsonb)
lt(eql_v3_real_ord_ope, query_real_ord_ope)
lt(eql_v3_real_ord_ore, eql_v3_real_ord_ore)
lt(eql_v3_real_ord_ore, jsonb)
lt(eql_v3_real_ord_ore, query_real_ord_ore)
lt(eql_v3_smallint_ord, eql_v3_smallint_ord)
lt(eql_v3_smallint_ord, jsonb)
lt(eql_v3_smallint_ord, query_smallint_ord)
lt(eql_v3_smallint_ord_ope, eql_v3_smallint_ord_ope)
lt(eql_v3_smallint_ord_ope, jsonb)
lt(eql_v3_smallint_ord_ope, query_smallint_ord_ope)
lt(eql_v3_smallint_ord_ore, eql_v3_smallint_ord_ore)
lt(eql_v3_smallint_ord_ore, jsonb)
lt(eql_v3_smallint_ord_ore, query_smallint_ord_ore)
lt(eql_v3_text_ord, eql_v3_text_ord)
lt(eql_v3_text_ord, jsonb)
lt(eql_v3_text_ord, query_text_ord)
lt(eql_v3_text_ord_ope, eql_v3_text_ord_ope)
lt(eql_v3_text_ord_ope, jsonb)
lt(eql_v3_text_ord_ope, query_text_ord_ope)
lt(eql_v3_text_ord_ore, eql_v3_text_ord_ore)
lt(eql_v3_text_ord_ore, jsonb)
lt(eql_v3_text_ord_ore, query_text_ord_ore)
lt(eql_v3_text_search, eql_v3_text_search)
lt(eql_v3_text_search, jsonb)
lt(eql_v3_text_search, query_text_search)
lt(eql_v3_text_search_ore, eql_v3_text_search_ore)
lt(eql_v3_text_search_ore, jsonb)
lt(eql_v3_text_search_ore, query_text_search_ore)
lt(eql_v3_timestamp_ord, eql_v3_timestamp_ord)
lt(eql_v3_timestamp_ord, jsonb)
lt(eql_v3_timestamp_ord, query_timestamp_ord)
lt(eql_v3_timestamp_ord_ope, eql_v3_timestamp_ord_ope)
lt(eql_v3_timestamp_ord_ope, jsonb)
lt(eql_v3_timestamp_ord_ope, query_timestamp_ord_ope)
lt(eql_v3_timestamp_ord_ore, eql_v3_timestamp_ord_ore)
lt(eql_v3_timestamp_ord_ore, jsonb)
lt(eql_v3_timestamp_ord_ore, query_timestamp_ord_ore)
lt(jsonb, eql_v3_bigint_ord)
lt(jsonb, eql_v3_bigint_ord_ope)
lt(jsonb, eql_v3_bigint_ord_ore)
lt(jsonb, eql_v3_date_ord)
lt(jsonb, eql_v3_date_ord_ope)
lt(jsonb, eql_v3_date_ord_ore)
lt(jsonb, eql_v3_double_ord)
lt(jsonb, eql_v3_double_ord_ope)
lt(jsonb, eql_v3_double_ord_ore)
lt(jsonb, eql_v3_integer_ord)
lt(jsonb, eql_v3_integer_ord_ope)
lt(jsonb, eql_v3_integer_ord_ore)
lt(jsonb, eql_v3_numeric_ord)
lt(jsonb, eql_v3_numeric_ord_ope)
lt(jsonb, eql_v3_numeric_ord_ore)
lt(jsonb, eql_v3_real_ord)
lt(jsonb, eql_v3_real_ord_ope)
lt(jsonb, eql_v3_real_ord_ore)
lt(jsonb, eql_v3_smallint_ord)
lt(jsonb, eql_v3_smallint_ord_ope)
lt(jsonb, eql_v3_smallint_ord_ore)
lt(jsonb, eql_v3_text_ord)
lt(jsonb, eql_v3_text_ord_ope)
lt(jsonb, eql_v3_text_ord_ore)
lt(jsonb, eql_v3_text_search)
lt(jsonb, eql_v3_text_search_ore)
lt(jsonb, eql_v3_timestamp_ord)
lt(jsonb, eql_v3_timestamp_ord_ope)
lt(jsonb, eql_v3_timestamp_ord_ore)
lt(query_bigint_ord, eql_v3_bigint_ord)
lt(query_bigint_ord, eql_v3_json_entry)
lt(query_bigint_ord_ope, eql_v3_bigint_ord_ope)
lt(query_bigint_ord_ore, eql_v3_bigint_ord_ore)
lt(query_date_ord, eql_v3_date_ord)
lt(query_date_ord_ope, eql_v3_date_ord_ope)
lt(query_date_ord_ore, eql_v3_date_ord_ore)
lt(query_double_ord, eql_v3_double_ord)
lt(query_double_ord, eql_v3_json_entry)
lt(query_double_ord_ope, eql_v3_double_ord_ope)
lt(query_double_ord_ore, eql_v3_double_ord_ore)
lt(query_integer_ord, eql_v3_integer_ord)
lt(query_integer_ord, eql_v3_json_entry)
lt(query_integer_ord_ope, eql_v3_integer_ord_ope)
lt(query_integer_ord_ore, eql_v3_integer_ord_ore)
lt(query_numeric_ord, eql_v3_json_entry)
lt(query_numeric_ord, eql_v3_numeric_ord)
lt(query_numeric_ord_ope, eql_v3_numeric_ord_ope)
lt(query_numeric_ord_ore, eql_v3_numeric_ord_ore)
lt(query_real_ord, eql_v3_json_entry)
lt(query_real_ord, eql_v3_real_ord)
lt(query_real_ord_ope, eql_v3_real_ord_ope)
lt(query_real_ord_ore, eql_v3_real_ord_ore)
lt(query_smallint_ord, eql_v3_json_entry)
lt(query_smallint_ord, eql_v3_smallint_ord)
lt(query_smallint_ord_ope, eql_v3_smallint_ord_ope)
lt(query_smallint_ord_ore, eql_v3_smallint_ord_ore)
lt(query_text_ord, eql_v3_json_entry)
lt(query_text_ord, eql_v3_text_ord)
lt(query_text_ord_ope, eql_v3_text_ord_ope)
lt(query_text_ord_ore, eql_v3_text_ord_ore)
lt(query_text_search, eql_v3_text_search)
lt(query_text_search_ore, eql_v3_text_search_ore)
lt(query_timestamp_ord, eql_v3_timestamp_ord)
lt(query_timestamp_ord_ope, eql_v3_timestamp_ord_ope)
lt(query_timestamp_ord_ore, eql_v3_timestamp_ord_ore)
ParameterTypeDescription
a public.eql_v3_bigint_ord
b public.eql_v3_bigint_ord

Returns: boolean — boolean

lte

Operator wrapper for public.eql_v3_bigint_ord.

159 overloads (one per encrypted type):

lte(eql_v3_bigint_ord, eql_v3_bigint_ord)
lte(eql_v3_bigint_ord, jsonb)
lte(eql_v3_bigint_ord, query_bigint_ord)
lte(eql_v3_bigint_ord_ope, eql_v3_bigint_ord_ope)
lte(eql_v3_bigint_ord_ope, jsonb)
lte(eql_v3_bigint_ord_ope, query_bigint_ord_ope)
lte(eql_v3_bigint_ord_ore, eql_v3_bigint_ord_ore)
lte(eql_v3_bigint_ord_ore, jsonb)
lte(eql_v3_bigint_ord_ore, query_bigint_ord_ore)
lte(eql_v3_date_ord, eql_v3_date_ord)
lte(eql_v3_date_ord, jsonb)
lte(eql_v3_date_ord, query_date_ord)
lte(eql_v3_date_ord_ope, eql_v3_date_ord_ope)
lte(eql_v3_date_ord_ope, jsonb)
lte(eql_v3_date_ord_ope, query_date_ord_ope)
lte(eql_v3_date_ord_ore, eql_v3_date_ord_ore)
lte(eql_v3_date_ord_ore, jsonb)
lte(eql_v3_date_ord_ore, query_date_ord_ore)
lte(eql_v3_double_ord, eql_v3_double_ord)
lte(eql_v3_double_ord, jsonb)
lte(eql_v3_double_ord, query_double_ord)
lte(eql_v3_double_ord_ope, eql_v3_double_ord_ope)
lte(eql_v3_double_ord_ope, jsonb)
lte(eql_v3_double_ord_ope, query_double_ord_ope)
lte(eql_v3_double_ord_ore, eql_v3_double_ord_ore)
lte(eql_v3_double_ord_ore, jsonb)
lte(eql_v3_double_ord_ore, query_double_ord_ore)
lte(eql_v3_integer_ord, eql_v3_integer_ord)
lte(eql_v3_integer_ord, jsonb)
lte(eql_v3_integer_ord, query_integer_ord)
lte(eql_v3_integer_ord_ope, eql_v3_integer_ord_ope)
lte(eql_v3_integer_ord_ope, jsonb)
lte(eql_v3_integer_ord_ope, query_integer_ord_ope)
lte(eql_v3_integer_ord_ore, eql_v3_integer_ord_ore)
lte(eql_v3_integer_ord_ore, jsonb)
lte(eql_v3_integer_ord_ore, query_integer_ord_ore)
lte(eql_v3_json_entry, query_bigint_ord)
lte(eql_v3_json_entry, query_double_ord)
lte(eql_v3_json_entry, query_integer_ord)
lte(eql_v3_json_entry, query_numeric_ord)
lte(eql_v3_json_entry, query_real_ord)
lte(eql_v3_json_entry, query_smallint_ord)
lte(eql_v3_json_entry, query_text_ord)
lte(eql_v3_numeric_ord, eql_v3_numeric_ord)
lte(eql_v3_numeric_ord, jsonb)
lte(eql_v3_numeric_ord, query_numeric_ord)
lte(eql_v3_numeric_ord_ope, eql_v3_numeric_ord_ope)
lte(eql_v3_numeric_ord_ope, jsonb)
lte(eql_v3_numeric_ord_ope, query_numeric_ord_ope)
lte(eql_v3_numeric_ord_ore, eql_v3_numeric_ord_ore)
lte(eql_v3_numeric_ord_ore, jsonb)
lte(eql_v3_numeric_ord_ore, query_numeric_ord_ore)
lte(eql_v3_real_ord, eql_v3_real_ord)
lte(eql_v3_real_ord, jsonb)
lte(eql_v3_real_ord, query_real_ord)
lte(eql_v3_real_ord_ope, eql_v3_real_ord_ope)
lte(eql_v3_real_ord_ope, jsonb)
lte(eql_v3_real_ord_ope, query_real_ord_ope)
lte(eql_v3_real_ord_ore, eql_v3_real_ord_ore)
lte(eql_v3_real_ord_ore, jsonb)
lte(eql_v3_real_ord_ore, query_real_ord_ore)
lte(eql_v3_smallint_ord, eql_v3_smallint_ord)
lte(eql_v3_smallint_ord, jsonb)
lte(eql_v3_smallint_ord, query_smallint_ord)
lte(eql_v3_smallint_ord_ope, eql_v3_smallint_ord_ope)
lte(eql_v3_smallint_ord_ope, jsonb)
lte(eql_v3_smallint_ord_ope, query_smallint_ord_ope)
lte(eql_v3_smallint_ord_ore, eql_v3_smallint_ord_ore)
lte(eql_v3_smallint_ord_ore, jsonb)
lte(eql_v3_smallint_ord_ore, query_smallint_ord_ore)
lte(eql_v3_text_ord, eql_v3_text_ord)
lte(eql_v3_text_ord, jsonb)
lte(eql_v3_text_ord, query_text_ord)
lte(eql_v3_text_ord_ope, eql_v3_text_ord_ope)
lte(eql_v3_text_ord_ope, jsonb)
lte(eql_v3_text_ord_ope, query_text_ord_ope)
lte(eql_v3_text_ord_ore, eql_v3_text_ord_ore)
lte(eql_v3_text_ord_ore, jsonb)
lte(eql_v3_text_ord_ore, query_text_ord_ore)
lte(eql_v3_text_search, eql_v3_text_search)
lte(eql_v3_text_search, jsonb)
lte(eql_v3_text_search, query_text_search)
lte(eql_v3_text_search_ore, eql_v3_text_search_ore)
lte(eql_v3_text_search_ore, jsonb)
lte(eql_v3_text_search_ore, query_text_search_ore)
lte(eql_v3_timestamp_ord, eql_v3_timestamp_ord)
lte(eql_v3_timestamp_ord, jsonb)
lte(eql_v3_timestamp_ord, query_timestamp_ord)
lte(eql_v3_timestamp_ord_ope, eql_v3_timestamp_ord_ope)
lte(eql_v3_timestamp_ord_ope, jsonb)
lte(eql_v3_timestamp_ord_ope, query_timestamp_ord_ope)
lte(eql_v3_timestamp_ord_ore, eql_v3_timestamp_ord_ore)
lte(eql_v3_timestamp_ord_ore, jsonb)
lte(eql_v3_timestamp_ord_ore, query_timestamp_ord_ore)
lte(jsonb, eql_v3_bigint_ord)
lte(jsonb, eql_v3_bigint_ord_ope)
lte(jsonb, eql_v3_bigint_ord_ore)
lte(jsonb, eql_v3_date_ord)
lte(jsonb, eql_v3_date_ord_ope)
lte(jsonb, eql_v3_date_ord_ore)
lte(jsonb, eql_v3_double_ord)
lte(jsonb, eql_v3_double_ord_ope)
lte(jsonb, eql_v3_double_ord_ore)
lte(jsonb, eql_v3_integer_ord)
lte(jsonb, eql_v3_integer_ord_ope)
lte(jsonb, eql_v3_integer_ord_ore)
lte(jsonb, eql_v3_numeric_ord)
lte(jsonb, eql_v3_numeric_ord_ope)
lte(jsonb, eql_v3_numeric_ord_ore)
lte(jsonb, eql_v3_real_ord)
lte(jsonb, eql_v3_real_ord_ope)
lte(jsonb, eql_v3_real_ord_ore)
lte(jsonb, eql_v3_smallint_ord)
lte(jsonb, eql_v3_smallint_ord_ope)
lte(jsonb, eql_v3_smallint_ord_ore)
lte(jsonb, eql_v3_text_ord)
lte(jsonb, eql_v3_text_ord_ope)
lte(jsonb, eql_v3_text_ord_ore)
lte(jsonb, eql_v3_text_search)
lte(jsonb, eql_v3_text_search_ore)
lte(jsonb, eql_v3_timestamp_ord)
lte(jsonb, eql_v3_timestamp_ord_ope)
lte(jsonb, eql_v3_timestamp_ord_ore)
lte(query_bigint_ord, eql_v3_bigint_ord)
lte(query_bigint_ord, eql_v3_json_entry)
lte(query_bigint_ord_ope, eql_v3_bigint_ord_ope)
lte(query_bigint_ord_ore, eql_v3_bigint_ord_ore)
lte(query_date_ord, eql_v3_date_ord)
lte(query_date_ord_ope, eql_v3_date_ord_ope)
lte(query_date_ord_ore, eql_v3_date_ord_ore)
lte(query_double_ord, eql_v3_double_ord)
lte(query_double_ord, eql_v3_json_entry)
lte(query_double_ord_ope, eql_v3_double_ord_ope)
lte(query_double_ord_ore, eql_v3_double_ord_ore)
lte(query_integer_ord, eql_v3_integer_ord)
lte(query_integer_ord, eql_v3_json_entry)
lte(query_integer_ord_ope, eql_v3_integer_ord_ope)
lte(query_integer_ord_ore, eql_v3_integer_ord_ore)
lte(query_numeric_ord, eql_v3_json_entry)
lte(query_numeric_ord, eql_v3_numeric_ord)
lte(query_numeric_ord_ope, eql_v3_numeric_ord_ope)
lte(query_numeric_ord_ore, eql_v3_numeric_ord_ore)
lte(query_real_ord, eql_v3_json_entry)
lte(query_real_ord, eql_v3_real_ord)
lte(query_real_ord_ope, eql_v3_real_ord_ope)
lte(query_real_ord_ore, eql_v3_real_ord_ore)
lte(query_smallint_ord, eql_v3_json_entry)
lte(query_smallint_ord, eql_v3_smallint_ord)
lte(query_smallint_ord_ope, eql_v3_smallint_ord_ope)
lte(query_smallint_ord_ore, eql_v3_smallint_ord_ore)
lte(query_text_ord, eql_v3_json_entry)
lte(query_text_ord, eql_v3_text_ord)
lte(query_text_ord_ope, eql_v3_text_ord_ope)
lte(query_text_ord_ore, eql_v3_text_ord_ore)
lte(query_text_search, eql_v3_text_search)
lte(query_text_search_ore, eql_v3_text_search_ore)
lte(query_timestamp_ord, eql_v3_timestamp_ord)
lte(query_timestamp_ord_ope, eql_v3_timestamp_ord_ope)
lte(query_timestamp_ord_ore, eql_v3_timestamp_ord_ore)
ParameterTypeDescription
a public.eql_v3_bigint_ord
b public.eql_v3_bigint_ord

Returns: boolean — boolean

match_term

Index extractor for public.eql_v3_text_match.

6 overloads (one per encrypted type):

match_term(eql_v3_text_match)
match_term(eql_v3_text_search)
match_term(eql_v3_text_search_ore)
match_term(query_text_match)
match_term(query_text_search)
match_term(query_text_search_ore)
ParameterTypeDescription
a public.eql_v3_text_match

Returns: eql_v3_internal.bloom_filter — eql_v3_internal.bloom_filter

matches

Operator wrapper for public.eql_v3_text_match.

15 overloads (one per encrypted type):

matches(eql_v3_text_match, eql_v3_text_match)
matches(eql_v3_text_match, jsonb)
matches(eql_v3_text_match, query_text_match)
matches(eql_v3_text_search, eql_v3_text_search)
matches(eql_v3_text_search, jsonb)
matches(eql_v3_text_search, query_text_search)
matches(eql_v3_text_search_ore, eql_v3_text_search_ore)
matches(eql_v3_text_search_ore, jsonb)
matches(eql_v3_text_search_ore, query_text_search_ore)
matches(jsonb, eql_v3_text_match)
matches(jsonb, eql_v3_text_search)
matches(jsonb, eql_v3_text_search_ore)
matches(query_text_match, eql_v3_text_match)
matches(query_text_search, eql_v3_text_search)
matches(query_text_search_ore, eql_v3_text_search_ore)
ParameterTypeDescription
a public.eql_v3_text_match
b public.eql_v3_text_match

Returns: boolean — boolean

max

max aggregate for public.eql_v3_bigint_ord.

30 overloads (one per encrypted type):

max(public.eql_v3_bigint_ord)
max(public.eql_v3_bigint_ord_ope)
max(public.eql_v3_bigint_ord_ore)
max(public.eql_v3_date_ord)
max(public.eql_v3_date_ord_ope)
max(public.eql_v3_date_ord_ore)
max(public.eql_v3_double_ord)
max(public.eql_v3_double_ord_ope)
max(public.eql_v3_double_ord_ore)
max(public.eql_v3_integer_ord)
max(public.eql_v3_integer_ord_ope)
max(public.eql_v3_integer_ord_ore)
max(public.eql_v3_json_entry)
max(public.eql_v3_numeric_ord)
max(public.eql_v3_numeric_ord_ope)
max(public.eql_v3_numeric_ord_ore)
max(public.eql_v3_real_ord)
max(public.eql_v3_real_ord_ope)
max(public.eql_v3_real_ord_ore)
max(public.eql_v3_smallint_ord)
max(public.eql_v3_smallint_ord_ope)
max(public.eql_v3_smallint_ord_ore)
max(public.eql_v3_text_ord)
max(public.eql_v3_text_ord_ope)
max(public.eql_v3_text_ord_ore)
max(public.eql_v3_text_search)
max(public.eql_v3_text_search_ore)
max(public.eql_v3_timestamp_ord)
max(public.eql_v3_timestamp_ord_ope)
max(public.eql_v3_timestamp_ord_ore)
ParameterTypeDescription
inputpublic.eql_v3_bigint_ord

Returns: public.eql_v3_bigint_ord — public.eql_v3_bigint_ord

meta_data

Extract envelope metadata (i, v, h) from a raw jsonb encrypted value.

h is the document's key header — hoisted once to the envelope because every sv entry encrypts under the document's single data key. Grafting it here (the same concat that already grafts i/v) is what keeps an extracted public.eql_v3_json_entry self-contained decryptable: decryption needs the header plus the entry's own s (the nonce source) and c (the raw AEAD output). jsonb_strip_nulls drops the keys entirely on payloads that lack them (e.g. a raw scalar envelope has no h), rather than grafting JSON nulls.

Signature:

meta_data(jsonb)
ParameterTypeDescription
valjsonbencrypted EQL payload

Returns: jsonb — jsonb Metadata object with i, v, and (for documents) h.

min

min aggregate for public.eql_v3_bigint_ord.

30 overloads (one per encrypted type):

min(public.eql_v3_bigint_ord)
min(public.eql_v3_bigint_ord_ope)
min(public.eql_v3_bigint_ord_ore)
min(public.eql_v3_date_ord)
min(public.eql_v3_date_ord_ope)
min(public.eql_v3_date_ord_ore)
min(public.eql_v3_double_ord)
min(public.eql_v3_double_ord_ope)
min(public.eql_v3_double_ord_ore)
min(public.eql_v3_integer_ord)
min(public.eql_v3_integer_ord_ope)
min(public.eql_v3_integer_ord_ore)
min(public.eql_v3_json_entry)
min(public.eql_v3_numeric_ord)
min(public.eql_v3_numeric_ord_ope)
min(public.eql_v3_numeric_ord_ore)
min(public.eql_v3_real_ord)
min(public.eql_v3_real_ord_ope)
min(public.eql_v3_real_ord_ore)
min(public.eql_v3_smallint_ord)
min(public.eql_v3_smallint_ord_ope)
min(public.eql_v3_smallint_ord_ore)
min(public.eql_v3_text_ord)
min(public.eql_v3_text_ord_ope)
min(public.eql_v3_text_ord_ore)
min(public.eql_v3_text_search)
min(public.eql_v3_text_search_ore)
min(public.eql_v3_timestamp_ord)
min(public.eql_v3_timestamp_ord_ope)
min(public.eql_v3_timestamp_ord_ore)
ParameterTypeDescription
inputpublic.eql_v3_bigint_ord

Returns: public.eql_v3_bigint_ord — public.eql_v3_bigint_ord

neq

Operator wrapper for public.eql_v3_bigint_eq.

190 overloads (one per encrypted type):

neq(eql_v3_bigint_eq, eql_v3_bigint_eq)
neq(eql_v3_bigint_eq, jsonb)
neq(eql_v3_bigint_eq, query_bigint_eq)
neq(eql_v3_bigint_ord, eql_v3_bigint_ord)
neq(eql_v3_bigint_ord, jsonb)
neq(eql_v3_bigint_ord, query_bigint_ord)
neq(eql_v3_bigint_ord_ope, eql_v3_bigint_ord_ope)
neq(eql_v3_bigint_ord_ope, jsonb)
neq(eql_v3_bigint_ord_ope, query_bigint_ord_ope)
neq(eql_v3_bigint_ord_ore, eql_v3_bigint_ord_ore)
neq(eql_v3_bigint_ord_ore, jsonb)
neq(eql_v3_bigint_ord_ore, query_bigint_ord_ore)
neq(eql_v3_date_eq, eql_v3_date_eq)
neq(eql_v3_date_eq, jsonb)
neq(eql_v3_date_eq, query_date_eq)
neq(eql_v3_date_ord, eql_v3_date_ord)
neq(eql_v3_date_ord, jsonb)
neq(eql_v3_date_ord, query_date_ord)
neq(eql_v3_date_ord_ope, eql_v3_date_ord_ope)
neq(eql_v3_date_ord_ope, jsonb)
neq(eql_v3_date_ord_ope, query_date_ord_ope)
neq(eql_v3_date_ord_ore, eql_v3_date_ord_ore)
neq(eql_v3_date_ord_ore, jsonb)
neq(eql_v3_date_ord_ore, query_date_ord_ore)
neq(eql_v3_double_eq, eql_v3_double_eq)
neq(eql_v3_double_eq, jsonb)
neq(eql_v3_double_eq, query_double_eq)
neq(eql_v3_double_ord, eql_v3_double_ord)
neq(eql_v3_double_ord, jsonb)
neq(eql_v3_double_ord, query_double_ord)
neq(eql_v3_double_ord_ope, eql_v3_double_ord_ope)
neq(eql_v3_double_ord_ope, jsonb)
neq(eql_v3_double_ord_ope, query_double_ord_ope)
neq(eql_v3_double_ord_ore, eql_v3_double_ord_ore)
neq(eql_v3_double_ord_ore, jsonb)
neq(eql_v3_double_ord_ore, query_double_ord_ore)
neq(eql_v3_integer_eq, eql_v3_integer_eq)
neq(eql_v3_integer_eq, jsonb)
neq(eql_v3_integer_eq, query_integer_eq)
neq(eql_v3_integer_ord, eql_v3_integer_ord)
neq(eql_v3_integer_ord, jsonb)
neq(eql_v3_integer_ord, query_integer_ord)
neq(eql_v3_integer_ord_ope, eql_v3_integer_ord_ope)
neq(eql_v3_integer_ord_ope, jsonb)
neq(eql_v3_integer_ord_ope, query_integer_ord_ope)
neq(eql_v3_integer_ord_ore, eql_v3_integer_ord_ore)
neq(eql_v3_integer_ord_ore, jsonb)
neq(eql_v3_integer_ord_ore, query_integer_ord_ore)
neq(eql_v3_numeric_eq, eql_v3_numeric_eq)
neq(eql_v3_numeric_eq, jsonb)
neq(eql_v3_numeric_eq, query_numeric_eq)
neq(eql_v3_numeric_ord, eql_v3_numeric_ord)
neq(eql_v3_numeric_ord, jsonb)
neq(eql_v3_numeric_ord, query_numeric_ord)
neq(eql_v3_numeric_ord_ope, eql_v3_numeric_ord_ope)
neq(eql_v3_numeric_ord_ope, jsonb)
neq(eql_v3_numeric_ord_ope, query_numeric_ord_ope)
neq(eql_v3_numeric_ord_ore, eql_v3_numeric_ord_ore)
neq(eql_v3_numeric_ord_ore, jsonb)
neq(eql_v3_numeric_ord_ore, query_numeric_ord_ore)
neq(eql_v3_real_eq, eql_v3_real_eq)
neq(eql_v3_real_eq, jsonb)
neq(eql_v3_real_eq, query_real_eq)
neq(eql_v3_real_ord, eql_v3_real_ord)
neq(eql_v3_real_ord, jsonb)
neq(eql_v3_real_ord, query_real_ord)
neq(eql_v3_real_ord_ope, eql_v3_real_ord_ope)
neq(eql_v3_real_ord_ope, jsonb)
neq(eql_v3_real_ord_ope, query_real_ord_ope)
neq(eql_v3_real_ord_ore, eql_v3_real_ord_ore)
neq(eql_v3_real_ord_ore, jsonb)
neq(eql_v3_real_ord_ore, query_real_ord_ore)
neq(eql_v3_smallint_eq, eql_v3_smallint_eq)
neq(eql_v3_smallint_eq, jsonb)
neq(eql_v3_smallint_eq, query_smallint_eq)
neq(eql_v3_smallint_ord, eql_v3_smallint_ord)
neq(eql_v3_smallint_ord, jsonb)
neq(eql_v3_smallint_ord, query_smallint_ord)
neq(eql_v3_smallint_ord_ope, eql_v3_smallint_ord_ope)
neq(eql_v3_smallint_ord_ope, jsonb)
neq(eql_v3_smallint_ord_ope, query_smallint_ord_ope)
neq(eql_v3_smallint_ord_ore, eql_v3_smallint_ord_ore)
neq(eql_v3_smallint_ord_ore, jsonb)
neq(eql_v3_smallint_ord_ore, query_smallint_ord_ore)
neq(eql_v3_text_eq, eql_v3_text_eq)
neq(eql_v3_text_eq, jsonb)
neq(eql_v3_text_eq, query_text_eq)
neq(eql_v3_text_ord, eql_v3_text_ord)
neq(eql_v3_text_ord, jsonb)
neq(eql_v3_text_ord, query_text_ord)
neq(eql_v3_text_ord_ope, eql_v3_text_ord_ope)
neq(eql_v3_text_ord_ope, jsonb)
neq(eql_v3_text_ord_ope, query_text_ord_ope)
neq(eql_v3_text_ord_ore, eql_v3_text_ord_ore)
neq(eql_v3_text_ord_ore, jsonb)
neq(eql_v3_text_ord_ore, query_text_ord_ore)
neq(eql_v3_text_search, eql_v3_text_search)
neq(eql_v3_text_search, jsonb)
neq(eql_v3_text_search, query_text_search)
neq(eql_v3_text_search_ore, eql_v3_text_search_ore)
neq(eql_v3_text_search_ore, jsonb)
neq(eql_v3_text_search_ore, query_text_search_ore)
neq(eql_v3_timestamp_eq, eql_v3_timestamp_eq)
neq(eql_v3_timestamp_eq, jsonb)
neq(eql_v3_timestamp_eq, query_timestamp_eq)
neq(eql_v3_timestamp_ord, eql_v3_timestamp_ord)
neq(eql_v3_timestamp_ord, jsonb)
neq(eql_v3_timestamp_ord, query_timestamp_ord)
neq(eql_v3_timestamp_ord_ope, eql_v3_timestamp_ord_ope)
neq(eql_v3_timestamp_ord_ope, jsonb)
neq(eql_v3_timestamp_ord_ope, query_timestamp_ord_ope)
neq(eql_v3_timestamp_ord_ore, eql_v3_timestamp_ord_ore)
neq(eql_v3_timestamp_ord_ore, jsonb)
neq(eql_v3_timestamp_ord_ore, query_timestamp_ord_ore)
neq(jsonb, eql_v3_bigint_eq)
neq(jsonb, eql_v3_bigint_ord)
neq(jsonb, eql_v3_bigint_ord_ope)
neq(jsonb, eql_v3_bigint_ord_ore)
neq(jsonb, eql_v3_date_eq)
neq(jsonb, eql_v3_date_ord)
neq(jsonb, eql_v3_date_ord_ope)
neq(jsonb, eql_v3_date_ord_ore)
neq(jsonb, eql_v3_double_eq)
neq(jsonb, eql_v3_double_ord)
neq(jsonb, eql_v3_double_ord_ope)
neq(jsonb, eql_v3_double_ord_ore)
neq(jsonb, eql_v3_integer_eq)
neq(jsonb, eql_v3_integer_ord)
neq(jsonb, eql_v3_integer_ord_ope)
neq(jsonb, eql_v3_integer_ord_ore)
neq(jsonb, eql_v3_numeric_eq)
neq(jsonb, eql_v3_numeric_ord)
neq(jsonb, eql_v3_numeric_ord_ope)
neq(jsonb, eql_v3_numeric_ord_ore)
neq(jsonb, eql_v3_real_eq)
neq(jsonb, eql_v3_real_ord)
neq(jsonb, eql_v3_real_ord_ope)
neq(jsonb, eql_v3_real_ord_ore)
neq(jsonb, eql_v3_smallint_eq)
neq(jsonb, eql_v3_smallint_ord)
neq(jsonb, eql_v3_smallint_ord_ope)
neq(jsonb, eql_v3_smallint_ord_ore)
neq(jsonb, eql_v3_text_eq)
neq(jsonb, eql_v3_text_ord)
neq(jsonb, eql_v3_text_ord_ope)
neq(jsonb, eql_v3_text_ord_ore)
neq(jsonb, eql_v3_text_search)
neq(jsonb, eql_v3_text_search_ore)
neq(jsonb, eql_v3_timestamp_eq)
neq(jsonb, eql_v3_timestamp_ord)
neq(jsonb, eql_v3_timestamp_ord_ope)
neq(jsonb, eql_v3_timestamp_ord_ore)
neq(query_bigint_eq, eql_v3_bigint_eq)
neq(query_bigint_ord, eql_v3_bigint_ord)
neq(query_bigint_ord_ope, eql_v3_bigint_ord_ope)
neq(query_bigint_ord_ore, eql_v3_bigint_ord_ore)
neq(query_date_eq, eql_v3_date_eq)
neq(query_date_ord, eql_v3_date_ord)
neq(query_date_ord_ope, eql_v3_date_ord_ope)
neq(query_date_ord_ore, eql_v3_date_ord_ore)
neq(query_double_eq, eql_v3_double_eq)
neq(query_double_ord, eql_v3_double_ord)
neq(query_double_ord_ope, eql_v3_double_ord_ope)
neq(query_double_ord_ore, eql_v3_double_ord_ore)
neq(query_integer_eq, eql_v3_integer_eq)
neq(query_integer_ord, eql_v3_integer_ord)
neq(query_integer_ord_ope, eql_v3_integer_ord_ope)
neq(query_integer_ord_ore, eql_v3_integer_ord_ore)
neq(query_numeric_eq, eql_v3_numeric_eq)
neq(query_numeric_ord, eql_v3_numeric_ord)
neq(query_numeric_ord_ope, eql_v3_numeric_ord_ope)
neq(query_numeric_ord_ore, eql_v3_numeric_ord_ore)
neq(query_real_eq, eql_v3_real_eq)
neq(query_real_ord, eql_v3_real_ord)
neq(query_real_ord_ope, eql_v3_real_ord_ope)
neq(query_real_ord_ore, eql_v3_real_ord_ore)
neq(query_smallint_eq, eql_v3_smallint_eq)
neq(query_smallint_ord, eql_v3_smallint_ord)
neq(query_smallint_ord_ope, eql_v3_smallint_ord_ope)
neq(query_smallint_ord_ore, eql_v3_smallint_ord_ore)
neq(query_text_eq, eql_v3_text_eq)
neq(query_text_ord, eql_v3_text_ord)
neq(query_text_ord_ope, eql_v3_text_ord_ope)
neq(query_text_ord_ore, eql_v3_text_ord_ore)
neq(query_text_search, eql_v3_text_search)
neq(query_text_search_ore, eql_v3_text_search_ore)
neq(query_timestamp_eq, eql_v3_timestamp_eq)
neq(query_timestamp_ord, eql_v3_timestamp_ord)
neq(query_timestamp_ord_ope, eql_v3_timestamp_ord_ope)
neq(query_timestamp_ord_ore, eql_v3_timestamp_ord_ore)
ParameterTypeDescription
a public.eql_v3_bigint_eq
b public.eql_v3_bigint_eq

Returns: boolean — boolean

ope_term

Low-level deterministic OPE byte extractor for a json entry.

Returns the bytea of the entry's deterministic op (CLLW OPE) term, or NULL for a term-less entry (a value entry, or a bool/null/structural path entry — which carry no term because exact matching there is selector presence, not a per-entry term). Entry-to-entry = / <> are blocked: these bytes are an ordering encoding, not an exact equality representation.

op is deterministic (equal plaintext at a fixed selector ⇒ equal bytes), so byte equality on it is a sound equality for number/string leaves — with the same encoding caveat as the scalar _ord surface (f64 rounding, string collation make it lossy for bigint/numeric/text). Exact, loss-free equality on a JSON field is selector presence (containment / the value selector), not this term. This extractor remains available only for callers that deliberately need encoded OPE-equivalence buckets. hm is retired — entries no longer carry it.

Signature:

ope_term(eql_v3_json_entry)
ParameterTypeDescription
entry public.eql_v3_json_entry

Returns: bytea — bytea Decoded op bytes (NULL if the entry has no op, or is NULL).

ord_term

Index extractor for public.eql_v3_bigint_ord.

39 overloads (one per encrypted type):

ord_term(eql_v3_bigint_ord)
ord_term(eql_v3_bigint_ord_ope)
ord_term(eql_v3_date_ord)
ord_term(eql_v3_date_ord_ope)
ord_term(eql_v3_double_ord)
ord_term(eql_v3_double_ord_ope)
ord_term(eql_v3_integer_ord)
ord_term(eql_v3_integer_ord_ope)
ord_term(eql_v3_json_entry)
ord_term(eql_v3_numeric_ord)
ord_term(eql_v3_numeric_ord_ope)
ord_term(eql_v3_real_ord)
ord_term(eql_v3_real_ord_ope)
ord_term(eql_v3_smallint_ord)
ord_term(eql_v3_smallint_ord_ope)
ord_term(eql_v3_text_ord)
ord_term(eql_v3_text_ord_ope)
ord_term(eql_v3_text_search)
ord_term(eql_v3_timestamp_ord)
ord_term(eql_v3_timestamp_ord_ope)
ord_term(query_bigint_ord)
ord_term(query_bigint_ord_ope)
ord_term(query_date_ord)
ord_term(query_date_ord_ope)
ord_term(query_double_ord)
ord_term(query_double_ord_ope)
ord_term(query_integer_ord)
ord_term(query_integer_ord_ope)
ord_term(query_numeric_ord)
ord_term(query_numeric_ord_ope)
ord_term(query_real_ord)
ord_term(query_real_ord_ope)
ord_term(query_smallint_ord)
ord_term(query_smallint_ord_ope)
ord_term(query_text_ord)
ord_term(query_text_ord_ope)
ord_term(query_text_search)
ord_term(query_timestamp_ord)
ord_term(query_timestamp_ord_ope)
ParameterTypeDescription
a public.eql_v3_bigint_ord

Returns: eql_v3_internal.ope_cllw — eql_v3_internal.ope_cllw

ord_term_ore

Index extractor for public.eql_v3_bigint_ord_ore.

20 overloads (one per encrypted type):

ord_term_ore(eql_v3_bigint_ord_ore)
ord_term_ore(eql_v3_date_ord_ore)
ord_term_ore(eql_v3_double_ord_ore)
ord_term_ore(eql_v3_integer_ord_ore)
ord_term_ore(eql_v3_numeric_ord_ore)
ord_term_ore(eql_v3_real_ord_ore)
ord_term_ore(eql_v3_smallint_ord_ore)
ord_term_ore(eql_v3_text_ord_ore)
ord_term_ore(eql_v3_text_search_ore)
ord_term_ore(eql_v3_timestamp_ord_ore)
ord_term_ore(query_bigint_ord_ore)
ord_term_ore(query_date_ord_ore)
ord_term_ore(query_double_ord_ore)
ord_term_ore(query_integer_ord_ore)
ord_term_ore(query_numeric_ord_ore)
ord_term_ore(query_real_ord_ore)
ord_term_ore(query_smallint_ord_ore)
ord_term_ore(query_text_ord_ore)
ord_term_ore(query_text_search_ore)
ord_term_ore(query_timestamp_ord_ore)
ParameterTypeDescription
a public.eql_v3_bigint_ord_ore

Returns: eql_v3_internal.ore_block_256 — eql_v3_internal.ore_block_256

selector

Extract selector (s) from a ste_vec entry.

The DOMAIN CHECK guarantees is present, so this is a simple field access.

2 overloads (one per encrypted type):

selector(eql_v3_json_entry)
selector(jsonb)
ParameterTypeDescription
entry public.eql_v3_json_entry

Returns: text — text The selector value.

ste_vec

Extract the sv element array as raw jsonb[].

Returns the elements of sv (or a single-element array wrapping the value when there is no sv). No envelope re-wrapping — raw jsonb elements.

Signature:

ste_vec(jsonb)
ParameterTypeDescription
valjsonbencrypted EQL payload

Returns: jsonb[] — jsonb[] Array of sv elements.

ste_vec_contains

Does encrypted value a contain all sv elements of b?

Empty b is always contained. Each element of b must have its selector present in some element of a (selector-subset containment).

2 overloads (one per encrypted type):

ste_vec_contains(eql_v3_json_search, eql_v3_json_search)
ste_vec_contains(jsonb, jsonb)
ParameterTypeDescription
a public.eql_v3_json_search
b public.eql_v3_json_search

Returns: boolean — boolean True if all elements of b are contained in a.

to_ste_vec_query

Convert a public.eql_v3_json_search to a query_json needle.

Normalises each sv element down to its selector s. Exact and structural containment are both selector-set containment; an op carried by a legacy or document-derived needle is accepted at the boundary for compatibility but is not part of the containment predicate. Other fields are stripped. This is the canonical needle shape for @> containment and the functional GIN index expression: GIN (eql_v3.to_ste_vec_query(col)::jsonb jsonb_path_ops).

2 overloads (one per encrypted type):

to_ste_vec_query(eql_v3_json_search)
to_ste_vec_query(query_json)
ParameterTypeDescription
e public.eql_v3_json_search

Returns: eql_v3.query_json — eql_v3.query_json Query-shaped needle, sv elements normalised.

version

Get the installed EQL version string.

Returns the version string for the installed EQL library. This value is baked in at build time from the release tag.

Signature:

version()

Returns: text — text Version string (e.g. "3.0.0" or "DEV" for development builds)

On this page