DataBase > MySQL

SQL to Select a random row from a database table

(1/1)

admin:
There are lots of ways to select a random record or row from a database table. Here are some example SQL statements that don't require additional application logic, but each database server requires different SQL syntax.

Select a random row with MySQL:

--- Code: ---SELECT column FROM table
ORDER BY RAND()
LIMIT 1
--- End code ---

Select a random row with PostgreSQL:

--- Code: ---SELECT column FROM table
ORDER BY RANDOM()
LIMIT 1
--- End code ---

Select a random row with Microsoft SQL Server:

--- Code: ---SELECT TOP 1 column FROM table
ORDER BY NEWID()
--- End code ---

Select a random row with IBM DB2

--- Code: ---SELECT column, RAND() as IDX
FROM table
ORDER BY IDX FETCH FIRST 1 ROWS ONLY
--- End code ---

Select a random record with Oracle:

--- Code: ---SELECT column FROM
( SELECT column FROM table
ORDER BY dbms_random.value )
WHERE rownum = 1
--- End code ---

Navigation

[0] Message Index

Go to full version