Как выбрать любую случайную строку в базе данных Oracle - PullRequest
0 голосов
/ 18 октября 2018

Мне нужно выбрать случайные отдельные данные из оракула БД.«Случайный» - это не какие-либо данные, а любые данные из списка данных, извлеченных из запроса.Я использую приведенный ниже запрос, чтобы вывести список данных о районе, но мне нужен только один, чтобы отобразить в ответ не все «em.

select distinct name
from billing_account
where user_status = 'Active'
and user_id ='1';

». При этом отображаются все отдельные имена пользователей со статусом «Active» и Id = «1».,Но мне нужно, чтобы отобразить любое случайное имя пользователя.Помогите, пожалуйста!

Oracle Sql Developer Version 4.0.2.15 и сборка 15.21

1 Ответ

0 голосов
/ 18 октября 2018

Использование DBMS_RANDOM.RANDOM:

select * from (
    select distinct name
    from billing_account
    where user_status = 'Active'
    and user_id ='1'
    order by DBMS_RANDOM.RANDOM
)
where rownum = 1;

ОБНОВЛЕНИЕ :

Я вижу, что DBMS_RANDOM.RANDOM устарела.Альтернативой может быть использование DBMS_RANDOM.VALUE:

select * from (
    select distinct name
    from billing_account
    where user_status = 'Active'
    and user_id ='1'
    order by DBMS_RANDOM.VALUE
)
where rownum = 1;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...