• GBase 8c V3.0.0数据类型——HLL函数和操作符(哈希函数)


    1. hll_hash_boolean(bool)

    描述:对bool类型数据计算哈希值。

    返回值类型:hll_hashval

    示例:

     gbase=# SELECT hll_hash_boolean(FALSE);

      hll_hash_boolean   

    ---------------------

     -5451962507482445012

    (1 row)

    1. hll_hash_boolean(bool, int32)

    描述:设置hash seed(即改变哈希策略)并对bool类型数据计算哈希值。

    返回值类型:hll_hashval

    示例:

     gbase=# SELECT hll_hash_boolean(FALSE, 10);

      hll_hash_boolean  

    --------------------

     -1169037589280886076

    (1 row)

    1. hll_hash_smallint(smallint)

    描述:对smallint类型数据计算哈希值。

    返回值类型:hll_hashval

    示例:

     gbase=# SELECT hll_hash_smallint(100::smallint);

      hll_hash_smallint  

    ---------------------

     962727970174027904

    (1 row)

    数值大小相同的参数使用不同数据类型的哈希函数计算,最后结果会不一样,因为不同类型哈希函数会选取不同的哈希计算策略。

    1. hll_hash_smallint(smallint, int32)

    描述:设置hash seed(即改变哈希策略)同时对smallint类型数据计算哈希值。

    返回值类型:hll_hashval

    示例:

     gbase=# SELECT hll_hash_smallint(100::smallint, 10);

      hll_hash_smallint  

    ---------------------

     -9056177146160443041

    (1 row)

    1. hll_hash_integer(integer)

    描述:对integer类型数据计算哈希值。

    返回值类型:hll_hashval

    示例:

     gbase=# SELECT hll_hash_integer(0);

       hll_hash_integer   

    ----------------------

     5156626420896634997

    (1 row)

    1. hll_hash_integer(integer, int32)

    描述:对integer类型数据计算哈希值,并设置hashseed(即改变哈希策略)。

    返回值类型:hll_hashval

    示例:

     gbase=# SELECT hll_hash_integer(0, 10);

      hll_hash_integer  

    --------------------

     -5035020264353794276

    (1 row)

    1. hll_hash_bigint(bigint)

    描述:对bigint类型数据计算哈希值。

    返回值类型:hll_hashval

    示例:

     gbase=# SELECT hll_hash_bigint(100::bigint);

       hll_hash_bigint   

    ---------------------

     -2401963681423227794

    (1 row)

    1. hll_hash_bigint(bigint, int32)

    描述:对bigint类型数据计算哈希值,并设置hashseed(即改变哈希策略)。

    返回值类型:hll_hashval

    示例:

     gbase=# SELECT hll_hash_bigint(100::bigint, 10);

       hll_hash_bigint   

    ---------------------

     -2305749404374433531

    (1 row)

    1. hll_hash_bytea(bytea)

    描述:对bytea类型数据计算哈希值。

    返回值类型:hll_hashval

    示例:

     gbase=# SELECT hll_hash_bytea(E'\\x');

     hll_hash_bytea

    ----------------

     0

    (1 row)

    1. hll_hash_bytea(bytea, int32)

    描述:对bytea类型数据计算哈希值,并设置hashseed(即改变哈希策略)。

    返回值类型:hll_hashval

    示例:

     gbase=# SELECT hll_hash_bytea(E'\\x', 10);

       hll_hash_bytea    

    ---------------------

     7233188113542599437

    (1 row)

    1. hll_hash_text(text)

    描述:对text类型数据计算哈希值。

    返回值类型:hll_hashval

    示例:

     gbase=# SELECT hll_hash_text('AB');

        hll_hash_text    

    ---------------------

     -5666002586880275174

    (1 row)

    1. hll_hash_text(text, int32)

    描述:对text类型数据计算哈希值,并设置hashseed(即改变哈希策略)。

    返回值类型:hll_hashval

    示例:

     gbase=# SELECT hll_hash_text('AB', 10);

    hll_hash_text

    ---------------------

    -2215507121143724132

    (1 row)

    1. hll_hash_any(anytype)

    描述:对任意类型数据计算哈希值。

    返回值类型:hll_hashval

    示例:

     gbase=# select hll_hash_any(1);

         hll_hash_any     

    ----------------------

     -1316670585935156930

    (1 row)

        

    gbase=# select hll_hash_any('08:00:2b:01:02:03'::macaddr);

         hll_hash_any     

    ----------------------

     -3719950434455589360

    (1 row)

    1. hll_hash_any(anytype, int32)

    描述:对任意类型数据计算哈希值,并设置hashseed(即改变哈希策略)。

    返回值类型:hll_hashval

    示例:

     gbase=# select hll_hash_any(1, 10);

         hll_hash_any     

    ----------------------

     7048553517657992351

    (1 row)

    1. hll_hashval_eq(hll_hashval, hll_hashval)

    描述:比较两个hll_hashval类型数据是否相等。

    返回值类型:bool

    示例:

     gbase=# select hll_hashval_eq(hll_hash_integer(1), hll_hash_integer(1));

     hll_hashval_eq

    ----------------

     t

    (1 row)

    1. hll_hashval_ne(hll_hashval, hll_hashval)

    描述:比较两个hll_hashval类型数据是否不相等。

    返回值类型:bool

    示例:

     gbase=# select hll_hashval_ne(hll_hash_integer(1), hll_hash_integer(1));

     hll_hashval_ne

    ----------------

     f

    (1 row)

  • 相关阅读:
    【Linux/脚本/芯片学习】Perl学习
    JavaScript利用多态的思想封装组件
    SpringBoot集成MySQL
    前端文件word Excel pdf PPT预览
    红日靶场五(vulnstack5)渗透分析
    云服务器CVM_云主机_云计算服务器_弹性云服务器-腾讯云
    使用grabit分析mysql数据库中的数据血缘关系
    360 评估调查:2023 年最佳 360 评估调查问题
    郁金香2021年游戏辅助技术(初级班)(上)
    【Unity2D 2022:Particle System】添加粒子特效
  • 原文地址:https://blog.csdn.net/futianxia061112/article/details/125439318