CREATE FUNCTION SWAP_ENDIAN(inString text) RETURNS TEXT DETERMINISTIC -- Expects a hex string: AbCdEf -- Returns the string swapped for endianness: EfCdAb BEGIN DECLARE position INT DEFAULT 1; DECLARE holder TEXT DEFAULT ''; WHILE position < LENGTH(inString) DO SET holder = CONCAT(SUBSTRING(inString, position, 2), holder); SET position = position + 2; END WHILE; RETURN holder; END
So you can do things like:
SELECT FROM_UNIXTIME( CONV( SWAP_ENDIAN( SUBSTRING( HEX( FROM_BASE64( 'Yk3XVQ8pAAAAZgAAAGoAAAAAAAQANS4xLjczLWxvZwAAAAAABBAAAAAAAAAAAAAAAA' 'AAAAAAAAAAAAAAAAAAAAAAAABiTddVEzgNAAgAEgAEBAQEEgAAUwAEGggAAAAICAgC' ) ), 1, 8 ) ), 16, 10) ) AS event_timestamp;
[…] PlanetMySQL Voting: Vote UP / Vote DOWN Full article:Swap Endian […]
Pingback by Swap Endian | MySQL — August 24, 2015 @ 7:15 pm