本文介紹了PolarDB PostgreSQL版(兼容Oracle)支持的網絡地址函數和操作符。
IP 網絡地址類型,cidr
和inet
,支持比較操作符表所示的常用比較操作符, 以及 IP 地址操作符表和 IP 地址的函數表所示的專用操作符和函數。
任何cidr
值都可以隱式地轉換到inet
;因此,下面在inet
上操作的操作符和函數也可以在cidr
值上工作。 (對于inet
和cidr
有單獨的函數,這是因為這兩種情況的行為應該是不同的)此外,它允許將inet
值轉換為cidr
。 當這樣做的時候,子網掩碼右邊的任何位都被靜默地置零,以創建一個有效的cidr
值。
IP 地址操作符
子網是否嚴格包含在子網中?這個操作符和后續的四個操作符測試子網包含情況。 它們只考慮兩個地址的網絡部分(忽略網絡掩碼右側的任何位),并確定一個網絡與另一個網絡相同或者是相同的子網。
|
子網是否包含或等于子網?
|
子網是否嚴格包含子網?
|
子網是否包含或等于子網?
|
其中一個子網包含或等于另一個子網?
|
計算位 NOT.
|
計算位 AND.
|
計算位 OR.
|
向地址添加偏移量。
|
向地址添加偏移量。
|
從地址中減去偏移量。
|
計算兩個地址的差值。
|
IP 地址的函數
創建縮略的文本顯示格式。 (結果與
|
創建縮寫的文本顯示格式(縮寫包括在子網掩碼的右側刪除所有零字節)。
|
為地址的網絡計算廣播地址。
|
返回地址的系列:
|
返回IP地址文本,忽略子網掩碼。
|
為地址的網絡計算主機掩碼。
|
計算包含兩個給定網絡的最小網絡。
|
測試地址是否屬于同一IP族。
|
以比特位返回子網掩碼長度。
|
為地址的網絡計算網絡掩碼。
|
返回地址的網絡部分,將子網掩碼右邊的部分歸零(這相當于將值轉換為
|
設置
|
設置
|
以文本形式返回未縮寫的IP地址和子網掩碼長度(這與顯式轉換為
|
abbrev
、host
和text
函數主要用于為 IP 地址提供另一種顯示格式。
MAC 地址類型, macaddr
和macaddr8
,支持比較操作符表中所示的常用比較操作符以及 MAC 地址函數表中所示的特殊函數。 此外,它們支持位元邏輯操作符~
, &
和 |
(NOT, AND 和 OR),就像上面對 IP 地址所示的那樣。
MAC 地址函數
將地址的最后3個字節設置為零。其余的前綴可以與特定的制造商關聯(使用本數據庫中沒有包含的數據)。
|
將地址的最后5個字節設置為零。其余的前綴可以與特定的制造商關聯(使用本數據庫中沒有包含的數據)。
|
將地址的第7位設置為1,創建所謂的modified EUI-64,用于包含在IPv6地址中。
|