-- 注意:偽隨機!可以用於將元素不可逆的偽隨機打亂。
SELECT -- 計算字符串的MD5值。( 如果您不需要一定使用MD5,請使用‘sipHash64’函數。) halfMD5('HELLO WORLD!'), halfMD5(12); SELECT MD5('drew-zero,78967'); SELECT -- 為任何類型的整數計算32位的哈希。 這是相對高效的非加密Hash函數 intHash32(1221232132132) AS intHash32, -- 推薦:從任何類型的整數計算64位哈希碼。 它的工作速度比intHash32函數快。 intHash64(1221232132132) AS intHash64, -- 計算任意數量字符串的CityHash64或使用特定實現的Hash函數計算任意數量其他類型的Hash。 cityHash64('username') AS cityHash64, -- 1.使用sha1或者sha224加密的話,只能用於字符串 -- 2.字符串 需使用單引號。 SHA1('1232131') AS sha1, SHA224('1232131') AS sha224, SHA256('DREW-ZERO') AS sha256; -- URLHash(url[, N]) 一種快速的非加密哈希函數,用於規范化的從URL獲得的字符串 -- 從一個字符串計算一個哈希,如果結尾存在尾隨符號/,?或#則忽略。 URLHash(s,N) -- 計算URL層次結構中字符串到N級別的哈希值,如果末尾存在尾隨符號/,?或#則忽略。 URL的層級與URLHierarchy中的層級相同 -- 用處:此函數被用於Yandex.Metrica。 SELECT URLHash('www.baidu.com'), -- 11390370829909720855 URLHash('www.baidu.com', 0), -- 11390370829909720855 -- URLHash('www.baidu.com', 1); -- 11160318154034397263 -- farmHash64(s) 計算字符串的FarmHash64。 接受一個String類型的參數。返回UInt64。 SELECT farmHash64('www.runoob.com'); -- 6668483584160323388 -- javaHash(s) 計算字符串的JavaHash。 接受一個String類型的參數。返回Int32。 SELECT javaHash('www.baidu.com'); -- 270263191 -- hiveHash(s) 計算字符串的HiveHash。 接受一個String類型的參數。返回Int32。 與JavaHash相同,但不會返回負數 SELECT hiveHash('www.baidu.com'); -- 270263191