Tous les produits
Search
Centre de documentation

MaxCompute:NET_IP_NET_MASK

Dernière mise à jour :Aug 10, 2026

La fonction NET_IP_NET_MASK génère l'adresse de masque réseau IPv4 ou IPv6 correspondante à partir d'une longueur de préfixe donnée.

Syntaxe

BINARY NET_IP_NET_MASK(BIGINT <num_output_bytes>, BIGINT <prefix_length>)

Paramètres

  • num_output_bytes : obligatoire, type BIGINT. Nombre d'octets du masque réseau à générer. Valeurs acceptées : 4 (pour IPv4) ou 16 (pour IPv6).

  • prefix_length : obligatoire, type BIGINT. Longueur du préfixe du masque réseau, c'est-à-dire le nombre de bits définis sur 1 dans le masque. Plage de valeurs : [0,num_output_bytes*8].

Valeur de retour

Renvoie une adresse IP de type BINARY. Nous vous recommandons d'utiliser cette fonction conjointement avec la fonction NET_IP_TO_STRING pour convertir le résultat en un format lisible. Règles de retour :

  • Si num_output_bytes n'est ni égal à 4 (pour IPv4) ni à 16 (pour IPv6), la fonction renvoie une erreur.

    Remarque

    Si le paramètre odps.sql.udf.strict.mode est défini sur false, la fonction renvoie NULL.

  • Si prefix_length est négatif ou supérieur à 8 * num_output_bytes, la fonction renvoie une erreur.

    Remarque

    Si le paramètre odps.sql.udf.strict.mode est défini sur false, la fonction renvoie NULL.

  • Si num_output_bytes ou prefix_length a la valeur NULL, la fonction renvoie NULL.

Exemples

Exemple 1 : Utilisation standard

--返回 =FF=FF=FF=00 
SELECT NET_IP_NET_MASK(4, 24);

--返回 =FF=FF=F0=00
SELECT NET_IP_NET_MASK(4, 20);

--返回 =FF=FF=FF=FF
SELECT NET_IP_NET_MASK(4, 32);

--返回 =00=00=00=00=00=00=00=00=00=00=00=00=00=00=00=00
SELECT NET_IP_NET_MASK(16, 0);

--返回 =80=00=00=00=00=00=00=00=00=00=00=00=00=00=00=00
SELECT NET_IP_NET_MASK(16, 1);

 --返回 =FF=FF=FF=FF=FF=FF=FF=FF=FF=FF=FF=FF=FF=FF=FF=FF
SELECT NET_IP_NET_MASK(16, 128);

--返回 NULL
SELECT NET_IP_NET_MASK(NULL, 128);

--返回 NULL
SELECT NET_IP_NET_MASK(4, NULL);

Exemple 2 : Utilisation conjointe avec la fonction NET_IP_TO_STRING

Utilisez cette fonction avec la fonction NET_IP_TO_STRING pour convertir l'adresse IP de type BINARY en un format lisible.

-- 返回 255.255.255.0
SELECT NET_IP_TO_STRING(NET_IP_NET_MASK(4, 24));

-- 返回 ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff
SELECT NET_IP_TO_STRING(NET_IP_NET_MASK(16, 128));

-- 返回 ffff:ffff:ffff:ffff::
SELECT NET_IP_TO_STRING(NET_IP_NET_MASK(16, 64));

Fonctions associées

La fonction NET_IP_NET_MASK fait partie des fonctions réseau. Pour plus d'informations sur les autres fonctions liées au réseau, consultez la page Network Functions Overview.