Pular para o conteúdo principal

ip_cidr_contains function

Applies to: check marked yes Databricks Runtime 18.2 and above

Beta

This feature is in Beta. Workspace admins can control access to this feature from the Previews page. See Manage Databricks previews.

Returns TRUE if an IP address or CIDR block is contained within another CIDR block, FALSE otherwise.

Syntax

ip_cidr_contains ( cidr, needle )

Arguments

  • cidr: A STRING or BINARY value representing a valid CIDR block.
  • needle: A STRING or BINARY value representing a valid IP address or CIDR block.

Mixed input types (STRING and BINARY) are permitted.

Returns

A BOOLEAN.

Returns TRUE if needle is contained within cidr, FALSE otherwise.

The function returns NULL if either argument is NULL.

Error conditions

Examples

SQL
> SELECT ip_cidr_contains('192.168.1.0/24', '192.168.2.1');
false

> SELECT ip_cidr_contains('2001:db8::/32', '2001:db8::1');
true

> SELECT ip_cidr_contains('::ffff:192.168.1.0/120', '192.168.1.100');
true

> SELECT ip_cidr_contains(X'C0A8010018', X'C0A80164');
true

> SELECT ip_cidr_contains('192.168.1.0/24', X'C0A80164');
true

> SELECT ip_cidr_contains(NULL, '192.168.1.1');
NULL

> SELECT ip_cidr_contains('192.168.1.0/24', NULL);
NULL

> SELECT ip_cidr_contains(NULL, NULL);
NULL

> SELECT ip_cidr_contains('invalid', '192.168.1.1');
Error: INVALID_CIDR_BLOCK