
We saw in a previous Vertica Quick Tip that we can create a SQL function that generates random dates. How about one that generates random strings?
Example:
dbadmin=> CREATE OR REPLACE FUNCTION randomstring (x INT) RETURN VARCHAR
dbadmin-> AS
dbadmin-> BEGIN
dbadmin-> RETURN CASE x
dbadmin-> WHEN 1 THEN CHR(RANDOMINT(25) + 65)
dbadmin-> WHEN 2 THEN CHR(RANDOMINT(25) + 65) || CHR(RANDOMINT(25) + 65)
dbadmin-> WHEN 3 THEN CHR(RANDOMINT(25) + 65) || CHR(RANDOMINT(25) + 65) || CHR(RANDOMINT(25) + 65)
dbadmin-> WHEN 4 THEN CHR(RANDOMINT(25) + 65) || CHR(RANDOMINT(25) + 65) || CHR(RANDOMINT(25) + 65) ||
dbadmin-> CHR(RANDOMINT(25) + 65)
dbadmin-> WHEN 5 THEN CHR(RANDOMINT(25) + 65) || CHR(RANDOMINT(25) + 65) || CHR(RANDOMINT(25) + 65) ||
dbadmin-> CHR(RANDOMINT(25) + 65) || CHR(RANDOMINT(25) + 65)
dbadmin-> ELSE
dbadmin-> NULL
dbadmin-> END;
dbadmin-> END;
CREATE FUNCTION
dbadmin=> SELECT randomstring(5);
randomstring
--------------
KVUSY
(1 row)
dbadmin=> SELECT randomstring(5);
randomstring
--------------
FCUFS
(1 row)
dbadmin=> SELECT randomstring(2);
randomstring
--------------
NI
(1 row)
Have fun!