Base64

This section contains reference documentation for base64 encode and decode functions.

Encoding scheme follows java.util.Base64.Encoder

  • toBase64 returns Base64 encoded string of input binary data (bytes type).

  • fromBase64 returns binary data (represented as a Hex string) from Base64-encoded string.

Signature

toBase64(bytesCol)

fromBase64(stringCol)

Usage Examples

For better readability, the following examples converts string hello! into BYTES using toUtf8 function and converts the decoded BYTES into string using fromUtf8.

SELECT toBase64(toUtf8('hello!')) AS encoded
FROM ignoreMe
encoded

aGVsbG8h

SELECT fromUtf8(fromBase64('aGVsbG8h')) AS decoded
FROM ignoreMe
decoded

hello!

Note that without UTF8 string conversion, returned BYTES will be represented as a Hex string following Pinot's BYTES column representation. See the example below.

SELECT fromBase64('aGVsbG8h') AS decoded
FROM ignoreMe
decoded

68656c6c6f21

Note that the following query will throw compilation error as string is not a valid input type for toBase64.

SELECT toBase64('hello!') AS encoded
FROM ignoreMe