Oracle Developer👨🏻‍💻
3.17K subscribers
583 photos
65 videos
2 files
471 links
🔝 канал о разработке в СУБД Oracle:
SQL, PL/SQL, оптимизация, архитектура и многое другое...

Backend-pro.ru - обучение по различным программам, связанных с backend-разработкой для ФЛ и ЮЛ.

Отец-основатель: @denis_dbd Кивилёв Денис
Download Telegram
Задача: Требуется сгенерировать случайную строку случайной длины от 10 до 20 символов, состоящих только из английских букв верхнего и нижнего регистров.

Принцип решения:
Для генерации случайных значений используется пакет dbms_random.
В нем есть ряд функций для генерации строковых и числовых значений.

Для генерации строки используем фунцию string. У неё есть два параметра:
1) Какие значения генерировать.
- 'u','U' : upper case alpha characters only
- 'l','L' : lower case alpha characters only
- 'a','A' : alpha characters only (mixed case)
- 'x','X' : any alpha-numeric characters (upper)
- 'p','P' : any printable characters
2) Какой длины нужна строка

Для получения случайной длины используем функцию value с заданием диапазона.

Запрос:
select dbms_random.string(opt => 'a',
len => dbms_random.value(10, 20)) rnd_str
from dual
connect by level <= 3;

Надеюсь, вам понравилась задачка 😉

#sql #решениезадачи #dbms_random