Получить записи из БД в рандомном порядке

В этой заметке мы расскажем, как средствами СУБД Microsoft SQL Server получить записи из БД в рандомном порядке. Приведем код SQL запроса и пример его выполнения.

Для того, чтобы осуществить выборку записей из базы данных, отсортированных в случайном порядке в СУБД Microsoft SQL Server имеется специальная функция: NEWID().

NEWID() работает следующим образом – она присваивает строкам в таблице БД уникальные идентификаторы, полученные с помощью генератора случайных чисел.

Чтобы получить все записи из таблицы, отсортированные в случайном порядке, необходимо использовать следующий запрос:

То есть, программно “внутри” СУБД (без изменения исходных данных) каждой строке будет поставлен в соответствие рандомный уникальный идентификатор, а затем по этому идентификатору будет выполнена сортировка (команда ORDER BY), и мы получим строки данных в случайном порядке.

Ниже приводится пример еще одного запроса, но уже на реальной таблице с данными; цель та же – получить записи из БД в рандомном порядке. В данном случае будут получены десять записей таблицы в случайном порядке.

Получить записи из БД в рандомном порядке

 

 

Получить записи из БД в рандомном порядке
5 (100%) 3 votes

Поделиться в соц. сетях:

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">