PostgreSQL | Генерация случайных строк

PostgreSQL | Генерация случайных строк

Через функцию «md5()» и «random()»

select md5(random()::text);
-- aa44c7d2f833d47102f8e800af754074

Всегда получаем длину строки 32 символа. Есть цифры, есть латинские буквы в нижнем регистре. Функция random() сильно ограничивает количество возможных комбинаций так как по факту в строке остаются только цифры.

Количество уникальных значений можно увеличить при помощи конкатенаций вида:

select md5(random()::text || random()::text);
select md5(random()::text || random()::text || random()::text);

 

Через функцию «gen_random_uuid()»

select gen_random_uuid();
-- f60884b6-0819-40bb-9c83-85fe91ce9b17
-- 02353b01-0212-4fd0-a89f-66eca8dd157d

Всегда получаем длину строки 36 символов. Есть цифры, есть латинские буквы в нижнем регистре, есть дефисы в фиксированных местах.