Condividi tramite


Выборка случайных записей

Достаточно распространенная задача с выборкой заданного количества случайных записей во всех СУБД делается примерно одинаково, но синтаксис немного отличается. Вот, собрал для заметки способы получения 10 случайных записей в самых популярных БД.

SQL Server

SELECT TOP 10 Title, Text FROM BlogPosts ORDER BY NEWID()

Oracle

SELECT Title, Text FROM  (SELECT Title, Text FROM BlogPosts ORDER BY dbms_random.value) WHERE rownum <= 10

MySQL

SELECT Title, Text FROM BlogPosts ORDER BY RAND() LIMIT 10

DB2

SELECT Title, Text, RAND() as IDX FROM BlogPosts ORDER BY IDX FETCH FIRST 10 ROWS ONLY