Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- DELIMITER $$
- DROP FUNCTION IF EXISTS guidFromNamespace $$
- CREATE FUNCTION guidFromNamespace(
- `namespace` BINARY(16),
- `content` VARCHAR(128)
- ) RETURNS BINARY(16) DETERMINISTIC
- RETURN UNHEX(CONCAT(
- SUBSTR(MD5(CONCAT(namespace,content)),1,12),
- '3',
- SUBSTR(MD5(CONCAT(namespace,content)),14,3),
- CASE
- WHEN SUBSTR(MD5(CONCAT(namespace,content)),17,1) IN ('0','4','c') THEN '8'
- WHEN SUBSTR(MD5(CONCAT(namespace,content)),17,1) IN ('1','5','d') THEN '9'
- WHEN SUBSTR(MD5(CONCAT(namespace,content)),17,1) IN ('2','6','e') THEN 'a'
- WHEN SUBSTR(MD5(CONCAT(namespace,content)),17,1) IN ('3','7','f') THEN 'b'
- ELSE SUBSTR(MD5(CONCAT(namespace,content)),17,1)
- END,
- SUBSTR(MD5(CONCAT(namespace,content)),18,15)
- )) $$
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement