Banco de DadosUtil

Quer sortear um registro do banco de dados?

Olá a todos.

Neste post algo não muito usual, mas é no mínimo muito legal.

Alguma vez você já precisou fazer uma espécie de ‘sorteio’ no banco de dados? Tudo bem, eu admito que dificilmente será o caso.

Mas, se você quiser sortear um felizardo dentro do seu banco de dados você não precisa criar um algoritmo que gera um Random(), testa se existe no banco e caso não exista gere Random() de novo <-- sinceramente isso não dá! xD Vou colocar abaixo como fazer nos diferentes bancos de dados: MySQL

select [colunas] from [tabela] order by rand() limit 1

PostgreSQL:

select [colunas] from [tabela] order by random() limit 1

MS SQL Server:

select top 1 [colunas] from [tabela] order by newid()

IBM DB2

select [colunas] from [tabela] order by rand() fetch first 1 rows only

Oracle:

select [colunas] from( select [colunas] from [tabela] order by dbms_random.value ) where rownum = 1

Então valeu. Espero que este post ajude em algo. Abraços.

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *