@@ -1088,6 +1088,32 @@ any of these functions cannot be pushed down they will raise an exception.
10881088
10891089* [dictGet](https:// clickhouse .com / docs/ sql- reference/ functions/ ext- dict- functions# dictget-dictgetordefault-dictgetornull)
10901090
1091+ # ## Extension Pushdown
1092+
1093+ pg_clickhouse recognizes functions from select third- party extensions and
1094+ pushes them down to their ClickHouse equivalents.
1095+
1096+ # ### [pg_re2]
1097+
1098+ All [pg_re2] functions push down 1 :1 to ClickHouse:
1099+
1100+ * ` re2match` → [match](https:// clickhouse .com / docs/ sql- reference/ functions/ string- search- functions# match)
1101+ * ` re2extract` → [extract](https:// clickhouse .com / docs/ sql- reference/ functions/ string- search- functions# extract)
1102+ * ` re2extractall` → [extractAll](https:// clickhouse .com / docs/ sql- reference/ functions/ string- search- functions# extractAll)
1103+ * ` re2regexpextract` → [regexpExtract](https:// clickhouse .com / docs/ sql- reference/ functions/ string- search- functions# regexpExtract)
1104+ * ` re2extractgroups` → [extractGroups](https:// clickhouse .com / docs/ sql- reference/ functions/ string- search- functions# extractGroups)
1105+ * ` re2replaceregexpone` → [replaceRegexpOne](https:// clickhouse .com / docs/ sql- reference/ functions/ string- replace- functions# replaceRegexpOne)
1106+ * ` re2replaceregexpall` → [replaceRegexpAll](https:// clickhouse .com / docs/ sql- reference/ functions/ string- replace- functions# replaceRegexpAll)
1107+ * ` re2countmatches` → [countMatches](https:// clickhouse .com / docs/ sql- reference/ functions/ string- search- functions# countMatches)
1108+ * ` re2countmatchescaseinsensitive` → [countMatchesCaseInsensitive](https:// clickhouse .com / docs/ sql- reference/ functions/ string- search- functions# countMatchesCaseInsensitive)
1109+ * ` re2multimatchany` → [multiMatchAny](https:// clickhouse .com / docs/ sql- reference/ functions/ string- search- functions# multiMatchAny)
1110+ * ` re2multimatchanyindex` → [multiMatchAnyIndex](https:// clickhouse .com / docs/ sql- reference/ functions/ string- search- functions# multiMatchAnyIndex)
1111+ * ` re2multimatchallindices` → [multiMatchAllIndices](https:// clickhouse .com / docs/ sql- reference/ functions/ string- search- functions# multiMatchAllIndices)
1112+
1113+ # ### [intarray]
1114+
1115+ * ` idx` → [indexOf](https:// clickhouse .com / docs/ sql- reference/ functions/ array- functions# indexOf)
1116+
10911117# ## Pushdown Casts
10921118
10931119pg_clickhouse pushes down casts such as ` CAST(x AS bigint)` for compatible
@@ -1323,3 +1349,7 @@ Copyright (c) 2025-2026, ClickHouse.
13231349 [Postgres flags]: https:// www .postgresql .org/ docs/ 18 / functions- matching .html # POSIX-EMBEDDED-OPTIONS-TABLE
13241350 " PostgreSQL Docs: ARE Embedded-Option Letters"
13251351 [RE2 Regular Expressions]: https:// github .com / google/ re2/ wiki/ Syntax " RE2 Syntax"
1352+ [pg_re2]: https:// github .com / ClickHouse/ pg_re2
1353+ " pg_re2: ClickHouse-compatible regex functions using RE2"
1354+ [intarray]: https:// www .postgresql .org/ docs/ current/ intarray .html
1355+ " PostgreSQL Docs: intarray"
0 commit comments