Category Archive: Software Livre

Subcategories: Sem categorias

Selecionar uma linha randômica no SQL

Estava eu todo satisfeito trabalhando quando o cliente que está analisando o site me questiona se tem como os dados de determinada tabela virem randômicos… putz, pensei, será que vou ter que embaralhar os dados na marra? Não é possível né, vou pesquisar na internet. E foi aí que achei o resumido, mas eficiente artigo do Pete Freitag. Ele esclarece como randomizar as linhas no SQL em alguns bancos de dados. Veja aí o que te atende e use o random a vontade. Fique a vontade para postar no comentário outras maneiras de fazer a mesma coisa.

Selecionar uma linha randômica no MySQL:

SELECT column FROM table
ORDER BY RAND()
LIMIT 1

Selecionar uma linha randômica no PostgreSQL:

SELECT column FROM table
ORDER BY RANDOM()
LIMIT 1

Selecionar uma linha randômica no Microsoft SQL Server:

SELECT TOP 1 column FROM table
ORDER BY NEWID()

Selecionar uma linha randômica no IBM DB2

SELECT column, RAND() as IDX
FROM table
ORDER BY IDX FETCH FIRST 1 ROWS ONLY

Selecionar uma linha randômica no Oracle:

SELECT column FROM
( SELECT column FROM table
ORDER BY dbms_random.value )
WHERE rownum = 1