sql md5 最简单例子
select MD5('0j46o1112665989') as mdd
有时候需要将多个字符串拼接
select MD5(CONCAT('0j46o','1112665989'))
行 | mdd5 |
1 | gU89+XO93zUEg4w39N7U0A== |
将MD5 的字节码转化为 16进制
SELECT
TO_HEX(MD5(CONCAT('0j46o', CAST(1112665989 AS STRING))))
行 | s16 |
1 | 814f3df973bddf3504838c37f4ded4d0 |
提取字节码的前12 位
SELECT SUBSTR(TO_HEX(MD5(CONCAT('0j46o', CAST(1112665989 AS STRING)))),0, 12) as f2
行 | f2 |
1 | 814f3df973bd |
然后 将八进制转为 十进制 int
select CAST(CONCAT('0x', SUBSTR(TO_HEX(MD5(CONCAT('0j46o', CAST(1112665989 AS STRING)))),0, 12)) AS INT64) as num
行 | num |
1 | 142177342157757 |
然后 对这个十进制的数字取mod
select MOD(CAST(CONCAT('0x', SUBSTR(TO_HEX(MD5(CONCAT('0j46o', CAST(1112665989 AS STRING)))),0, 12)) AS INT64), 100) as group_id
行 | group_id |
1 | 57 |