ТИЖДЕНЬ РІКУ Функція () у MySQL використовується для пошуку року та тижня для певної дати. Якщо дата дорівнює NULL, функція YEARWEEK() поверне NULL. В іншому випадку він повертає значення року в діапазоні від 1000 до 9999 і значення тижня в діапазоні від 0 до 53.
рядок для int java
Синтаксис:
YEARWEEK(date, mode)>
Параметр: Цей метод приймає два параметри, згадані вище та описані нижче:
- date : дата або дата-час, з яких ми хочемо отримати рік і тиждень. режим : визначає, з якого дня починається тиждень. У наведеній нижче таблиці описано, як працює аргумент режиму.
| Режим | Перший день тижня | Діапазон | Тиждень 1 - перший тиждень... |
|---|---|---|---|
| 0 | неділя | 0-53 | з неділею цього року |
| 1 | понеділок | 0-53 | з 4 і більше днями цього року |
| 2 | неділя | 1-53 | з неділею цього року |
| 3 | понеділок | 1-53 | з 4 і більше днями цього року |
| 4 | неділя | 0-53 | з 4 і більше днями цього року |
| 5 | понеділок | 0-53 | з понеділком цього року |
| 6 | неділя | 1-53 | з 4 і більше днями цього року |
| 7 | понеділок | 1-53 | з понеділком цього року |
Повернення: Він повертає значення року та тижня разом.
Приклад-1: Пошук поточного року та тижня за допомогою функції Year() 28/09/2020.
SELECT YEARWEEK(NOW()) AS Current_YearWeek;>
Вихід:
міні панель інструментів excel
+------------------+ | Current_YearWeek | +------------------+ | 202039 | +------------------+ 1 row in set (0.00 sec)>
Отже, поточний рік - 2020, а номер тижня - 39.
Приклад-2: Пошук року та тижня за заданою датою та часом за допомогою функції YEARWEEK().
SELECT YEARWEEK('2018-04-22 08:09:22') AS Year_Week ;> Вихід:
+-----------+ | Year_Week | +-----------+ | 201816 | +-----------+>
Отже, у цьому прикладі 2018 рік і номер тижня 16.
Приклад-3: Пошук року та тижня за вказаною датою та часом за допомогою функції YEARWEEK(), коли дата має значення NULL.
SELECT YEARWEEK(NULL) AS Year_Week ;>
Вихід:
java, якщо інше
+-----------+ | Year_Week | +-----------+ | NULL | +-----------+>
Приклад-4: У цьому прикладі ми збираємося знайти кількість студентів, зарахованих на курс за кожен тиждень у році. Для демонстрації створіть таблицю з іменем.
курс:
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) );>
Тепер вставляємо деякі дані в таблицю Product:
INSERT INTO Course(Course_Name, Student_id, Student_name, Enroll_Date) VALUES ( 'CS101', 161011, 'Amit Singh', '2019-11-26' ), ( 'CS101', 161029, 'Arun Kumar', '2019-11-30' ), ( 'CS101', 161031, 'Sanya Jain', '2019-12-08' ), ( 'CS101', 161058, 'Riya Shah', '2019-12-15' ), ( 'CS101', 162051, 'Amit Sharma', '2019-12-18' ), ( 'CS101', 161951, 'Sayan Singh', '2019-12-26' ), ( 'CS101', 167051, 'Rishi Jana', '2020-01-02' ), ( 'CS101', 168001, 'Aniket Dravid', '2020-01-10' ), ( 'CS101', 168051, 'Rita Singh', '2020-01-13' ), ( 'CS101', 166051, 'Kalyan Ghandi', '2020-01-26' ) ;>
Отже, наша таблиця виглядає так:
цикл for в java
mysql>вибрати * з курсу; +-------------+------------+--------------+------ -------+ | Назва_курсу | Student_id | Ім'я_студента | Дата_зарахування | +-------------+------------+--------------+------ -------+ | CS101 | 161011 | Аміт Сінгх | 2019-11-26 | | CS101 | 161029 | Арун Кумар | 2019-11-30 | | CS101 | 161031 | Саня Джайн | 2019-12-08 | | CS101 | 161058 | Рія Шах | 2019-12-15 | | CS101 | 161951 | Саян Сінгх | 2019-12-26 | | CS101 | 162051 | Аміт Шарма | 2019-12-18 | | CS101 | 166051 | Кальян Ганді | 2020-01-26 | | CS101 | 167051 | Ріші Джана | 2020-01-02 | | CS101 | 168001 | Анікет Дравід | 2020-01-10 | | CS101 | 168051 | Рита Сінгх | 2020-01-13 | +-------------+------------+--------------+------ -------+ 10 рядків у наборі (0,00 сек)>
Тепер ми збираємося знайти кількість студентів, зарахованих на курс за кожен тиждень і рік.
SELECT YEARWEEK(Enroll_Date) YearandWeek, COUNT(Student_id) Student_Enrolled FROM Course GROUP BY YEARWEEK(Enroll_Date) ORDER BY YEARWEEK(Enroll_Date);>
Вихід:
+-------------+------------------+ | YearandWeek | Student_Enrolled | +-------------+------------------+ | 201947 | 2 | | 201949 | 1 | | 201950 | 2 | | 201951 | 1 | | 201952 | 1 | | 202001 | 1 | | 202002 | 1 | | 202004 | 1 | +-------------+------------------+ 8 rows in set (0.00 sec).>