Skip to content

Instantly share code, notes, and snippets.

@diegomagikal
Created November 15, 2020 02:11
Show Gist options
  • Save diegomagikal/f3998f2ea97638660d43bceab87c823f to your computer and use it in GitHub Desktop.
Save diegomagikal/f3998f2ea97638660d43bceab87c823f to your computer and use it in GitHub Desktop.
Mysql: Uuid to bin / bin to uuid functions
DELIMITER |
CREATE FUNCTION bin_to_uuid(b BINARY(16))
RETURNS CHAR(36) DETERMINISTIC
BEGIN
DECLARE HEX CHAR(32);
SET HEX = HEX(b);
RETURN LOWER(CONCAT(LEFT(HEX, 8), '-', MID(HEX, 9,4), '-', MID(HEX, 13,4), '-', MID(HEX, 17,4), '-', RIGHT(HEX, 12)));
END
|
CREATE FUNCTION uuid_to_bin(s CHAR(36))
RETURNS BINARY(16) DETERMINISTIC
RETURN UNHEX(CONCAT(LEFT(s, 8), MID(s, 10, 4), MID(s, 15, 4), MID(s, 20, 4), RIGHT(s, 12)))
|
DELIMITER ;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment