Listing 5: Function That Converts Value from Original Base to Decimal CREATE FUNCTION dbo.fn_basetodec (@val AS VARCHAR(63), @base AS int) RETURNS BIGINT AS BEGIN RETURN (SELECT SUM( (CHARINDEX( SUBSTRING(@val, LEN(@val) - n + 1, 1), '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ') - 1) * POWER(CAST(@base AS BIGINT), n-1)) FROM Nums WHERE n <= LEN(@val)); END GO