La función WEEKOFYEAR() en MySQL se usa para encontrar el número de semana para una fecha determinada. Si la fecha es NULL, la función WEEKOFYEAR devolverá NULL. De lo contrario, devuelve el valor de la semana que oscila entre 1 y 53.
Sintaxis:
WEEKOFYEAR( date)
Parámetro:
este método acepta solo un parámetro.
- fecha: la fecha o fecha y hora de la que queremos extraer el número de semana.
Devoluciones :
Devuelve el número de semana.
Ejemplo-1:
encontrar el número de la semana actual usando la función WEEKOFYEAR() el 29/09/2020.
SELECT WEEKOFYEAR(NOW()) AS Current_Week;
Producción :
Semana actual |
---|
40 |
Entonces, el número de la semana actual es 40.
Ejemplo-2:
encontrar la semana a partir de una fecha y hora determinada mediante la función WEEKOFYEAR().
SELECT WEEKOFYEAR('2018-04-22 08:09:22') AS Week_Number ;
Producción :
Número de la semana |
---|
dieciséis |
Entonces, el número de semana es 16 en este ejemplo.
Ejemplo-3:
encontrar la semana a partir de una fecha dada usando la función WEEKOFYEAR().
SELECT WEEKOFYEAR('2019-07-25 ') AS Week_Number ;
Producción :
Número de la semana |
---|
30 |
Ejemplo-4:
encontrar el número de semana a partir de una fecha y hora dada usando la función WEEKOFYEAR() cuando la fecha es NULL.
SELECT WEEKOFYEAR(NULL) AS Week_Number;
Producción :
Número de la semana |
---|
NULO |
Ejemplo-4:
En este ejemplo, vamos a encontrar el número de estudiantes matriculados en un curso para cada semana en un año. Para demostrar, cree una tabla llamada. Curso.
CREATE TABLE Course ( Course_name VARCHAR(100) NOT NULL, Student_id INT NOT NULL, Student_name VARCHAR(100) NOT NULL, Enroll_Date Date NOT NULL, PRIMARY KEY(Student_id) );
Ahora insertando algunos datos en la tabla del curso.
INSERT INTO Course(Course_Name, Student_id, Student_name, Enroll_Date) VALUES ( 'CS101', 161011, 'Amit Singh', '2019-10-06' ), ( 'CS101', 161029, 'Arun Kumar', '2019-10-23' ), ( 'CS101', 161031, 'Sanya Jain', '2019-11-08' ), ( 'CS101', 161058, 'Riya Shah', '2019-11-20' ), ( 'CS101', 162051, 'Amit Sharma', '2019-11-30' ), ( 'CS101', 161951, 'Sayan Singh', '2019-12-07' ), ( 'CS101', 167051, 'Rishi Jana', '2019-12-15' ), ( 'CS101', 168001, 'Aniket Dravid', '2019-12-25' ), ( 'CS101', 168051, 'Rita Singh', '2019-12-28' ), ( 'CS101', 166051, 'Kalyan Ghandi', '2019-12-29' ) ;
Entonces, nuestra mesa parece.
Nombre del curso | Identificación del Estudiante | Nombre del estudiante | Inscripción_Fecha |
---|---|---|---|
CS101 | 161011 | amit singh | 2019-10-06 |
CS101 | 161029 | Arun Kumar | 2019-10-23 |
CS101 | 161031 | sanya jainista | 2019-11-08 |
CS101 | 161058 | Riya Shah | 2019-11-20 |
CS101 | 162051 | Amit Sharma | 2019-11-30 |
CS101 | 161951 | sayan singh | 2019-12-07 |
CS101 | 167051 | rishi jana | 2019-12-15 |
CS101 | 168001 | Aniket Dravid | 2019-12-25 |
CS101 | 168051 | Rita Singh | 2019-12-28 |
CS101 | 166051 | kalyan ghandi | 2019-12-39 |
Ahora, vamos a encontrar el número de estudiantes matriculados en el curso cada semana.
SELECT WEEKOFYEAR(Enroll_Date) Week_Number, COUNT(Student_id) Student_Enrolled FROM Course GROUP BY WEEKOFYEAR(Enroll_Date) ORDER BY WEEKOFYEAR(Enroll_Date);
Producción :
Número de la semana | Estudiante_Matriculado |
---|---|
40 | 1 |
43 | 1 |
45 | 1 |
47 | 1 |
48 | 1 |
49 | 1 |
50 | 1 |
52 | 3 |
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