Función ALEATORIO() en MySQL

La función RAND() en MySQL se usa para devolver un valor de punto flotante aleatorio V en el rango 0 <= V < 1.0 . Si queremos obtener un entero aleatorio R en el rango i <= R < j , tenemos que usar la expresión
FLOOR(i + RAND() * (j − i)) .

Sintaxis:

RAND(N)

Parámetro: este método acepta solo un parámetro.
N : si se especifica N, devuelve una secuencia repetible de números aleatorios. Si no se especifica N, devuelve un número completamente aleatorio. Es opcional y funciona como un valor inicial.
Devoluciones: Devuelve un número flotante aleatorio entre 0 y 1.

Ejemplo-1:
Obtención de un valor aleatorio entre 0 y 1 usando la función RAND.

SELECT RAND() AS Random_Number;

Producción :

Número aleatorio
0.6332025068189973

Ejemplo-2:
Obtención de un valor aleatorio entre 0 y 1 usando la función RAND con valor inicial.

SELECT RAND(), RAND(5), RAND(5);

Producción :

ALEATORIO() ALEATORIO(5) ALEATORIO(5)
0.9580191140603452 0.40613597483014313 0.40613597483014313

Entonces, aquí podemos ver que, si usamos el mismo valor inicial para generar el número aleatorio, obtendremos como resultado el mismo número aleatorio.

Ejemplo-3:
Obtención de un valor aleatorio entre el rango [5, 10] usando la función ALEATORIO. Aquí, usaremos la expresión: FLOOR(i + RAND() * (j − i)) para generar el número aleatorio. Aquí, yo tendré 5 años y j tendré 10 años.

SELECT FLOOR(5 + RAND()*(10-5)) AS Random_Number;

Producción :

Número aleatorio
6

Ejemplo-4:
Obtención de un valor aleatorio entre el rango [5, 10] usando la función ALEATORIO. Aquí, usaremos la expresión: FLOOR(i + RAND() * (j − i + 1)) para generar el número aleatorio. Aquí yo tendré 5 y j tendré 10.

SELECT FLOOR(5 + RAND()*(10 - 5 + 1)) AS Random_Number;

Producción :

Número aleatorio
10

Ejemplo-5:
uso de la función RAND para devolver filas de una tabla de categorías en orden aleatorio. Para demostrarlo, cree una tabla llamada Student .

CREATE TABLE Student(
          Student_id INT AUTO_INCREMENT,  
          Student_name VARCHAR(100) NOT NULL,
          Student_Class VARCHAR(20) NOT NULL,
          TotalExamGiven INT   NOT NULL,
          PRIMARY KEY(Student_id )
);

Ahora insertando algunos datos en la tabla Student –

INSERT INTO  
          Student(Student_name, Student_Class, TotalExamGiven)
VALUES
          ('Sayan', 'IX', 8),
          ('Nitin', 'X', 5),
          ('Aniket', 'XI', 6),
          ('Abdur', 'X', 7),
          ('Riya', 'IX', 4),
          ('Jony', 'X', 10),
          ('Deepak', 'X', 7),
          ('Ankana', 'XII', 5),
          ('Shreya', 'X', 8);

Para obtener todos los detalles sobre Student Table, usaremos:

SELECT * 
FROM Student;

Producción :

Identificación del Estudiante Nombre del estudiante Student_Class TotalExamenDado
1 Sayán IX 8
2 nitina X 5
3 Aniket XI 6
4 Abdur X 7
5 Riya IX 4
6 Jony X 10
7 Deepak X 7
8 Ankana XII 5
9 Shreya X 8

Entonces, podemos ver que todas las filas de la tabla se dan en el orden correcto. Para devolver filas de la tabla Student en un orden aleatorio, usaremos:

SELECT * 
FROM Student 
ORDER BY RAND();

Producción :

Identificación del Estudiante Nombre del estudiante Student_Class TotalExamenDado
6 Jony X 10
1 Sayán IX 8
5 Riya IX 4
2 nitina X 5
3 Aniket XI 6
8 Ankana XII 5
9 Shreya X 8
4 Abdur X 7
7 Deepak X 7

Publicación traducida automáticamente

Artículo escrito por jana_sayantan y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *