Ett enkelt sätt är:
select ('x'||lpad(the_hex_value,16,'0'))::bit(64)::bigint;
Den vänstra utfyllnaden med 0 är nödvändig eftersom biten längst till vänster alltid kommer att tolkas som teckenbiten. Tänk också på att bigint
är signerad, har postgres inte inbyggda osignerade typer.