isSubnetOf

isSubnetOf (서브넷 포함 여부 확인)

isSubnetOf 함수는 STRING 타입 인자를 2개 받아요. 첫 번째 인자는 ipPrefix, 두 번째 인자는 단일 ipAddress예요. IPv4와 IPv6 모두 처리합니다.

ipAddress가 ipPrefix의 서브넷에 속하는지 확인해 boolean 값을 반환해요.

출처: 문서

본문

isSubnetOf(ipPrefix, ipAddress) -> boolean

사용 예시

다음은 isSubnetOf를 쿼리의 다양한 위치에서 사용한 예시예요.

SELECT isSubnetOf('192.168.0.1/24', '192.168.0.225')
AS result
FROM myTable;
---> returns true

SELECT isSubnetOf('1.2.3.128/26', '1.2.5.1')
AS result
FROM myTable;
---> returns false
SELECT isSubnetOf('2001:4800:7825:103::/64', '2001:4800:7825:103::2050')
AS result
FROM myTable;
---> returns true

SELECT isSubnetOf('7890:db8:113::8a2e:370:7334/127', '7890:db8:113::8a2e:370:7336') 
AS result
FROM myTable;
---> returns false
SELECT count(*)
FROM myTable
WHERE isSubnetOf('192.168.0.1/24', ipAddressCol);

SELECT count(*)
FROM myTable
WHERE isSubnetOf('192.168.0.1/24', ipAddressCol)
OR isSubnetOf(ipPrefixCol, '7890:db8:113::8a2e:370:7336');
SELECT
    CASE
        WHEN isSubnetOf('105.25.245.115/27', srcIPAddress) THEN 'case1'
        WHEN isSubnetOf('105.25.245.115/27', dstIPAddress) THEN 'case2'
        ELSE 'case3'
    END AS differentFlow
FROM myTable;

더 알아보기 (Learn more)