Очевидно, для этого нет встроенной функции, но вы можете сделать это с помощью:
concat('x', replace(mac::text, ':', ''))::bit(64)::bigint
Пример:
WITH values (mac) AS (VALUES ('01:23:45:67:89:ab:cd:ef'::macaddr8))
SELECT
mac,
concat('x', replace(mac::text, ':', ''))::bit(64)::bigint AS num
FROM values;
... приводит к:
mac | num
-------------------------+-------------------
01:23:45:67:89:ab:cd:ef | 81985529216486895
(1 row)