ip_cidr_contains 函數

適用於:已勾選為 Databricks 執行環境 18.2 及以上版本

如果某 IP 位址或 CIDR 區塊被包含在另一個 CIDR 區塊中,則會回傳;TRUE否則則回傳FALSE。

Syntax

ip_cidr_contains ( cidr, needle )

引數

  • cidr: A STRING 或 BINARY 值,代表有效的 CIDR 區塊。
  • needle: A STRING 或 BINARY 值,代表有效的 IP 位址或 CIDR 區塊。

允許混合輸入類型(STRING 和 BINARY)。

Returns

BOOLEAN。

若包含TRUE於 needle,cidr則返回FALSE,否則。

若任一參數為 NULL,函數回傳NULL。

錯誤條件

Examples

> 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