Scalar Functions — IP Address
IP functions parse and inspect IPv4 and IPv6 addresses. A key thing to be aware of is that KQL's parse_ipv4() returns an integer representation of the address, while PostgreSQL's equivalent returns an inet type — the two are not directly comparable in mixed queries.
Legend: ✅ Supported · ⚠️ Approximated · ❌ Not Supported · 🔄 Rewritten
| Function | SQLite | MySQL | ClickHouse | PostgreSQL | Notes |
|---|---|---|---|---|---|
parse_ipv4() | ❌ | ✅ | ✅ | ⚠️ | MySQL: INET_ATON() returns integer, matching KQL semantics; ClickHouse: IPv4StringToNum() returns integer; Postgres: CAST(... AS inet) returns inet type, not integer |
parse_ipv6() | ❌ | ✅ | ✅ | ⚠️ | MySQL: INET6_ATON(); Postgres: CAST(... AS inet) returns inet type, not binary integer |
ipv4_is_private() | ❌ | ⚠️ | ✅ | ✅ | Postgres: << inet subnet containment; MySQL: INET_ATON range checks with warning |
note
SQLite has no IP address functions. If your enrichment or federated search queries need to classify or parse IP addresses and your target is SQLite, handle the classification upstream in the pipeline using a script processor before the enrich step.