Si desea que el registro resultante sea ordenado al azar, debe utilizar los siguientes códigos de acuerdo con varias bases de datos.
Aquí hay una pregunta: ¿cuál es la necesidad de buscar un registro aleatorio o una fila de una base de datos?
A veces es posible que desee mostrar información aleatoria como artículos, enlaces, páginas, etc., a su usuario.
Si desea obtener filas aleatorias de cualquiera de las bases de datos, debe utilizar algunas consultas modificadas de acuerdo con las bases de datos.
- Seleccione una fila aleatoria con MySQL:
Si desea devolver una fila aleatoria con MY SQL, use la siguiente sintaxis:
- Seleccione una fila aleatoria con Postgre SQL:
- Seleccione una fila aleatoria con SQL Server:
- Seleccione una fila aleatoria con Oracle:
- Seleccione una fila aleatoria con IBM DB2:
Para entender este concepto de manera práctica, veamos algunos ejemplos usando la base de datos MySQL. Considere que tenemos elementos de tabla creados en la base de datos con los siguientes datos:
Tabla: elementos
IDENTIFICACIÓN | Nombre del árticulo | Cantidad de objetos | Precio del articulo | Fecha de compra |
---|---|---|---|---|
1 | Jabón | 5 | 200 2021-07-08 | |
2 | Pasta dental | 2 | 80 | 2021-07-10 |
3 | Lápiz | 10 | 50 | 2021-07-12 |
4 | Botella | 1 | 250 | 2021-07-13 |
5 | Cepillar | 3 | 90 | 2021-07-15 |
Supongamos que queremos recuperar cualquier registro aleatorio de la tabla de elementos.
Escribiremos la consulta de la siguiente manera:
Podemos obtener los siguientes resultados:
IDENTIFICACIÓN | Nombre del árticulo | Cantidad de objetos | Precio del articulo | Fecha de compra |
---|---|---|---|---|
3 | Lápiz | 10 | 20 | 2021-07-12 |
Ahora intentemos ejecutar la misma consulta una vez más.
Podemos obtener los siguientes resultados:
IDENTIFICACIÓN | Nombre del árticulo | Cantidad de objetos | Precio del articulo | Fecha de compra |
---|---|---|---|---|
5 | Cepillar | 3 | 90 | 2021-07-15 |
De los resultados anteriores, podemos concluir que obtenemos diferentes registros como salida en ambas ocasiones, aunque ejecutamos la misma consulta dos veces. La función RAND () ha seleccionado registros aleatorios en ambas ocasiones para la misma consulta de una sola tabla. Por lo tanto, incluso si volvemos a ejecutar la misma consulta, obtendremos un resultado diferente cada vez. Existe una posibilidad poco común de obtener el mismo registro de forma consecutiva utilizando la función RAND ().
Ahora, suponga que desea que todos los registros de la tabla se obtengan al azar.
Para hacerlo, necesitamos ejecutar la siguiente consulta:
Podemos obtener los siguientes resultados:
IDENTIFICACIÓN | Nombre del árticulo | Cantidad de objetos | Precio del articulo | Fecha de compra |
---|---|---|---|---|
4 | Botella | 1 | 250 | 2021-07-13 |
5 | Cepillar | 3 | 90 | 2021-07-15 |
1 | Jabón | 5 | 200 | 2021-07-08 |
2 | Pasta dental | 2 | 80 | 2021-07-10 |
3 | Lápiz | 10 | 50 | 2021-07-12 |
También existe la posibilidad de obtener algunos arreglos diferentes de registros si ejecutamos la función RAND () nuevamente en la tabla de empleados.