密态等值的函数

密态等值的函数 - 图1 说明:

轻量版场景下,openGauss提供此接口,但密态等值功能不可用。

  • byteawithoutorderwithequalcolin(cstring)

描述:将输入转码转化成内部byteawithoutorderwithequalcol形式。

参数类型:cstring

返回值类型:byteawithoutorderwithequalcol - byteawithoutorderwithequalcolout(byteawithoutorderwithequalcol)

描述:将内部byteawithoutorderwithequalcol类型的数据转码转化为cstring类型。

参数类型:byteawithoutorderwithequalcol

返回值类型:cstring - byteawithoutorderwithequalcolsend(byteawithoutorderwithequalcol)

描述:将byteawithoutorderwithequalcol类型的数据转码转化为bytea类型。

参数类型:byteawithoutorderwithequalcol

返回值类型:bytea - byteawithoutorderwithequalcolrecv(internal)

描述:将byteawithoutorderwithequalcol类型的数据转码转化为byteawithoutorderwithequalcol类型。

参数类型:internal

返回值类型:byteawithoutorderwithequalcol - byteawithoutorderwithequalcoltypmodin(_cstring)

描述:将byteawithoutorderwithequalcol类型的数据转码转化为byteawithoutorderwithequalcol类型。

参数类型:_cstring

返回值类型:int4 - byteawithoutorderwithequalcoltypmodout(int4)

描述:将int4类型的数据转码转化为cstring类型。

参数类型:int4

返回值类型:cstring - byteawithoutordercolin(cstring)

描述:将输入转码转化成内部byteawithoutordercolin形式。

参数类型:cstring

返回值类型:byteawithoutordercol - byteawithoutordercolout(byteawithoutordercol)

描述:将内部byteawithoutordercol类型的数据转码转化为cstring类型。

参数类型:byteawithoutordercol

返回值类型:cstring - byteawithoutordercolsend(byteawithoutordercol)

描述:将byteawithoutordercol类型的数据转码转化为bytea类型。

参数类型:byteawithoutordercol

返回值类型:bytea - byteawithoutordercolrecv(internal)

描述:将byteawithoutordercol类型的数据转码转化为byteawithoutordercol类型。

参数类型:internal

返回值类型:byteawithoutordercol - byteawithoutorderwithequalcolcmp(byteawithoutorderwithequalcol, byteawithoutorderwithequalcol)

描述:比较两个byteawithoutorderwithequalcol类型的数据大小,若第一个参数小于第二个参数,返回-1,若等于,返回0,若大于,则返回1。

参数类型:byteawithoutorderwithequalcol, byteawithoutorderwithequalcol

返回值类型:int4 - byteawithoutorderwithequalcolcmpbytear(byteawithoutorderwithequalcol, bytea)

描述:比较byteawithoutorderwithequalcol和bytea数据大小,若第一个参数小于第二个参数,返回-1,若等于,返回0,若大于,则返回1。

参数类型:byteawithoutorderwithequalcol, bytea

返回值类型:int4 - byteawithoutorderwithequalcolcmpbyteal(bytea, byteawithoutorderwithequalcol)

描述:比较bytea和byteawithoutorderwithequalcol数据大小,若第一个参数小于第二个参数,返回-1,若等于,返回0,若大于,则返回1。

参数类型:byteawithoutorderwithequalcol, bytea

返回值类型:int4 - byteawithoutorderwithequalcoleq(byteawithoutorderwithequalcol, byteawithoutorderwithequalcol)

描述:比较两个byteawithoutorderwithequalcol类型的数据是否相同,相同则返回true,否则返回false。

参数类型:byteawithoutorderwithequalcol, bytea

返回值类型:bool - byteawithoutorderwithequalcoleqbyteal(bytea, byteawithoutorderwithequalcol)

描述:比较bytea和byteawithoutorderwithequalcol数据是否相同,相同则返回true,否则返回false。

参数类型:bytea,byteawithoutorderwithequalcol

返回值类型:bool - byteawithoutorderwithequalcoleqbytear(byteawithoutorderwithequalcol, bytea)

描述:比较byteawithoutorderwithequalcol和bytea数据是否相同,相同则返回true,否则返回false。

参数类型:byteawithoutorderwithequalcol, bytea

返回值类型:bool - byteawithoutorderwithequalcolne(byteawithoutorderwithequalcol, byteawithoutorderwithequalcol)

描述:比较两个byteawithoutorderwithequalcol类型的数据是否不相同,不相同则返回true,否则返回false。

参数类型:byteawithoutorderwithequalcol, byteawithoutorderwithequalcol

返回值类型:bool - byteawithoutorderwithequalcolnebyteal(bytea, byteawithoutorderwithequalcol)

描述:比较bytea和byteawithoutorderwithequalcol数据是否相同,相同则返回true,否则返回false。

参数类型:bytea,byteawithoutorderwithequalcol

返回值类型:bool - byteawithoutorderwithequalcolnebytear(byteawithoutorderwithequalcol, bytea)

描述:比较byteawithoutorderwithequalcol和bytea数据是否不相同,相同则返回true,否则返回false。

参数类型:byteawithoutorderwithequalcol, bytea

返回值类型:bool - hll_hash_byteawithoutorderwithequalcol(byteawithoutorderwithequalcol)

描述:返回byteawithoutorderwithequalcol的hll哈希值。

参数类型:byteawithoutorderwithequalcol

返回值类型:hll_hashval

由于byteawithoutorderwithequalcolin的实现会对cek进行查找,并且判断是否为正常加密后的数据类型。因此如果用户输入数据的格式不为加密后的数据格式,并且在本地不存在对应cek的情况下,会返回错误。

``` 1. openGauss=# SELECT * FROM byteawithoutorderwithequalcolsend('\x907219912381298461289346129'::byteawithoutorderwithequalcol); 2. ERROR: cek with OID 596711794 not found 3. LINE 1: SELECT * FROM byteawithoutorderwithequalcolsend('\x907219912... 4. ^ 5. openGauss=# SELECT * FROM byteawithoutordercolout('\x90721901999999999999912381298461289346129'); 6. ERROR: cek with OID 2566986098 not found 7. LINE 1: SELECT * FROM byteawithoutordercolout('\x9072190199999999999...

  1. SELECT * FROM byteawithoutorderwithequalcolrecv('\x90721901999999999999912381298461289346129'::byteawithoutorderwithequalcol);
  2. ERROR: cek with OID 2566986098 not found
  3. ^
  4. openGauss=# SELECT * FROM byteawithoutorderwithequalcolsend('\x90721901999999999999912381298461289346129'::byteawithoutorderwithequalcol);
  5. ERROR: cek with OID 2566986098 not found
  6. LINE 1: SELECT * FROM byteawithoutorderwithequalcolsend('\x907219019...
  7. ^ ```