Functions
Generated catalog of EQL SQL functions and operators (EQL 3.0.4).
EQL version
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.
| Domain | Type | Variant | Capabilities | Operators |
|---|---|---|---|---|
public.eql_v3_bigint | bigint | (storage only) | storage | — |
public.eql_v3_bigint_eq | bigint | _eq | equality | = <> |
public.eql_v3_bigint_ord | bigint | _ord | equality, order | = <> < <= > >= |
public.eql_v3_bigint_ord_ope | bigint | _ord_ope | equality, order | = <> < <= > >= |
public.eql_v3_bigint_ord_ore | bigint | _ord_ore | equality, order | = <> < <= > >= |
public.eql_v3_boolean | boolean | (storage only) | storage | — |
public.eql_v3_date | date | (storage only) | storage | — |
public.eql_v3_date_eq | date | _eq | equality | = <> |
public.eql_v3_date_ord | date | _ord | equality, order | = <> < <= > >= |
public.eql_v3_date_ord_ope | date | _ord_ope | equality, order | = <> < <= > >= |
public.eql_v3_date_ord_ore | date | _ord_ore | equality, order | = <> < <= > >= |
public.eql_v3_double | double | (storage only) | storage | — |
public.eql_v3_double_eq | double | _eq | equality | = <> |
public.eql_v3_double_ord | double | _ord | equality, order | = <> < <= > >= |
public.eql_v3_double_ord_ope | double | _ord_ope | equality, order | = <> < <= > >= |
public.eql_v3_double_ord_ore | double | _ord_ore | equality, order | = <> < <= > >= |
public.eql_v3_integer | integer | (storage only) | storage | — |
public.eql_v3_integer_eq | integer | _eq | equality | = <> |
public.eql_v3_integer_ord | integer | _ord | equality, order | = <> < <= > >= |
public.eql_v3_integer_ord_ope | integer | _ord_ope | equality, order | = <> < <= > >= |
public.eql_v3_integer_ord_ore | integer | _ord_ore | equality, order | = <> < <= > >= |
eql_v3.query_json | jsonb | (storage only) | json | — |
public.eql_v3_json | jsonb | (storage only) | storage | — |
public.eql_v3_json_entry | jsonb | (storage only) | json | — |
public.eql_v3_json_search | jsonb | (storage only) | json | — |
public.eql_v3_numeric | numeric | (storage only) | storage | — |
public.eql_v3_numeric_eq | numeric | _eq | equality | = <> |
public.eql_v3_numeric_ord | numeric | _ord | equality, order | = <> < <= > >= |
public.eql_v3_numeric_ord_ope | numeric | _ord_ope | equality, order | = <> < <= > >= |
public.eql_v3_numeric_ord_ore | numeric | _ord_ore | equality, order | = <> < <= > >= |
public.eql_v3_real | real | (storage only) | storage | — |
public.eql_v3_real_eq | real | _eq | equality | = <> |
public.eql_v3_real_ord | real | _ord | equality, order | = <> < <= > >= |
public.eql_v3_real_ord_ope | real | _ord_ope | equality, order | = <> < <= > >= |
public.eql_v3_real_ord_ore | real | _ord_ore | equality, order | = <> < <= > >= |
public.eql_v3_smallint | smallint | (storage only) | storage | — |
public.eql_v3_smallint_eq | smallint | _eq | equality | = <> |
public.eql_v3_smallint_ord | smallint | _ord | equality, order | = <> < <= > >= |
public.eql_v3_smallint_ord_ope | smallint | _ord_ope | equality, order | = <> < <= > >= |
public.eql_v3_smallint_ord_ore | smallint | _ord_ore | equality, order | = <> < <= > >= |
public.eql_v3_text | text | (storage only) | storage | — |
public.eql_v3_text_eq | text | _eq | equality | = <> |
public.eql_v3_text_match | text | _match | match | @@ |
public.eql_v3_text_ord | text | _ord | equality, order | = <> < <= > >= |
public.eql_v3_text_ord_ope | text | _ord_ope | equality, order | = <> < <= > >= |
public.eql_v3_text_ord_ore | text | _ord_ore | equality, order | = <> < <= > >= |
public.eql_v3_text_search | text | _search | equality, order, match | = <> < <= > >= @@ |
public.eql_v3_text_search_ore | text | _search_ore | equality, order, match | = <> < <= > >= @@ |
public.eql_v3_timestamp | timestamp | (storage only) | storage | — |
public.eql_v3_timestamp_eq | timestamp | _eq | equality | = <> |
public.eql_v3_timestamp_ord | timestamp | _ord | equality, order | = <> < <= > >= |
public.eql_v3_timestamp_ord_ope | timestamp | _ord_ope | equality, order | = <> < <= > >= |
public.eql_v3_timestamp_ord_ore | timestamp | _ord_ore | equality, 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)| Parameter | Type | Description |
|---|---|---|
val | jsonb | encrypted 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)| Parameter | Type | Description |
|---|---|---|
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)| Parameter | Type | Description |
|---|---|---|
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)| Parameter | Type | Description |
|---|---|---|
val | jsonb |
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)| Parameter | Type | Description |
|---|---|---|
val | jsonb |
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)| Parameter | Type | Description |
|---|---|---|
val | jsonb |
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)| Parameter | Type | Description |
|---|---|---|
input | jsonb | Encrypted 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)| Parameter | Type | Description |
|---|---|---|
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)| Parameter | Type | Description |
|---|---|---|
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)| Parameter | Type | Description |
|---|---|---|
val | jsonb | encrypted 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)| Parameter | Type | Description |
|---|---|---|
val | jsonb | encrypted 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)| Parameter | Type | Description |
|---|---|---|
val | jsonb | encrypted 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)| Parameter | Type | Description |
|---|---|---|
a | jsonb | Payload to check. |
b | jsonb | Container 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)| Parameter | Type | Description |
|---|---|---|
a | jsonb | Container payload. |
b | jsonb | Search 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)| Parameter | Type | Description |
|---|---|---|
val | jsonb | encrypted EQL payload. |
selector | text | Selector 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)| Parameter | Type | Description |
|---|---|---|
val | jsonb | encrypted EQL payload with sv. |
selector | text | Selector 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)| Parameter | Type | Description |
|---|---|---|
val | jsonb | encrypted EQL payload. |
selector | text | Selector 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)| Parameter | Type | Description |
|---|---|---|
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)| Parameter | Type | Description |
|---|---|---|
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)| Parameter | Type | Description |
|---|---|---|
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)| Parameter | Type | Description |
|---|---|---|
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)| Parameter | Type | Description |
|---|---|---|
input | public.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)| Parameter | Type | Description |
|---|---|---|
val | jsonb | encrypted 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)| Parameter | Type | Description |
|---|---|---|
input | public.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)| Parameter | Type | Description |
|---|---|---|
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)| Parameter | Type | Description |
|---|---|---|
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)| Parameter | Type | Description |
|---|---|---|
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)| Parameter | Type | Description |
|---|---|---|
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)| Parameter | Type | Description |
|---|---|---|
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)| Parameter | Type | Description |
|---|---|---|
val | jsonb | encrypted 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)| Parameter | Type | Description |
|---|---|---|
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)| Parameter | Type | Description |
|---|---|---|
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)
Joins
Equijoins on encrypted columns: the same-keyset and matching-variant constraint, IN (subquery) and set operations, a worked example, and how to diagnose a join that returns nothing.
Overview
PostgreSQL types, operators, and functions for querying encrypted data with EQL v2 (v2.2) — the eql_v2_encrypted type and searchable index types.