WEEKDAY() Function in MySQL
Last Updated :
29 Sep, 2020
WEEKDAY() function in MySQL is used to find the weekday value for a given date. If the date is NULL, the WEEKDAY() function will return NULL. Otherwise, it returns index for a date i.e., 0 for Monday, 1 for Tuesday, … 6 for Sunday.
Syntax :
WEEKDAY(date)
Parameter : This method accepts one parameter as mentioned above and described below :
-
date : The date or datetime from which we want to extract the weekday value.
Returns : It returns the weekday value for a given date.
Example-1 : Finding the weekday value of current date Using WEEKDAY() Function on 27/09/2020.
SELECT WEEKDAY(NOW()) AS WeekDay;
Output :
mysql> SELECT WEEKDAY(NOW()) AS WeekDay;
+---------+
| WeekDay |
+---------+
| 6 |
+---------+
So, the current day is ‘Sunday’ as WEEKDAY Function returns 6.
Example-2 : Finding the weekday value from given datetime Using WEEKDAY () Function.
SELECT WEEKDAY ('2017-08-22 08:09:22') AS WeekDay_Value ;
Output :
+---------------+
| WeekDay_Value |
+---------------+
| 1 |
+---------------+
So, the day is ‘Tuesday’ in this example.
Example-3 : Finding the weekday value from given datetime using WEEKDAY () Function when the date is NULL.
SELECT WEEKDAY (NULL) AS WeekDay_Value ;
Output :
+---------------+
| WeekDay_Value |
+---------------+
| NULL |
+---------------+
Example-4 : In this example we are going to find number of Product sold for every weekday. To demonstrate create a table named.
Product :
CREATE TABLE Product(
Product_id INT AUTO_INCREMENT,
Product_name VARCHAR(100) NOT NULL,
Buying_price DECIMAL(13, 2) NOT NULL,
Selling_price DECIMAL(13, 2) NOT NULL,
Selling_Date Date NOT NULL,
PRIMARY KEY(Product_id)
);
Now inserting some data to the Product table :
INSERT INTO
Product(Product_name, Buying_price, Selling_price, Selling_Date)
VALUES
('Audi Q8', 10000000.00, 15000000.00, '2020-08-26' ),
('Volvo XC40', 2000000.00, 3000000.00, '2020-08-27' ),
('Audi A6', 4000000.00, 5000000.00, '2020-08-28' ),
('BMW X5', 5000500.00, 7006500.00, '2020-09-01' ),
('Jaguar XF', 5000000, 7507000.00, '2020-09-04' ),
('Mercedes-Benz C-Class', 4000000.00, 6000000.00, '2020-09-05' ),
('Jaguar F-PACE', 5000000.00, 7000000.00, '2020-09-08' ),
('Volvo S90', 4500000.00, 6000000.00, '2020-09-11' ),
('BMW X4', 4000000.00, 6200000.00, '2020-09-12' ),
('Porsche Macan', 6500000.00, 8000000.00, '2020-09-16' ) ;
So, the Product table is :
mysql> Select * from Product;
+------------+-----------------------+--------------+---------------+--------------+
| Product_id | Product_name | Buying_price | Selling_price | Selling_Date |
+------------+-----------------------+--------------+---------------+--------------+
| 1 | Audi Q8 | 10000000.00 | 15000000.00 | 2020-08-26 |
| 2 | Volvo XC40 | 2000000.00 | 3000000.00 | 2020-08-27 |
| 3 | Audi A6 | 4000000.00 | 5000000.00 | 2020-08-28 |
| 4 | BMW X5 | 5000500.00 | 7006500.00 | 2020-09-01 |
| 5 | Jaguar XF | 5000000.00 | 7507000.00 | 2020-09-04 |
| 6 | Mercedes-Benz C-Class | 4000000.00 | 6000000.00 | 2020-09-05 |
| 7 | Jaguar F-PACE | 5000000.00 | 7000000.00 | 2020-09-08 |
| 8 | Volvo S90 | 4500000.00 | 6000000.00 | 2020-09-11 |
| 9 | BMW X4 | 4000000.00 | 6200000.00 | 2020-09-12 |
| 10 | Porsche Macan | 6500000.00 | 8000000.00 | 2020-09-16 |
+------------+-----------------------+--------------+---------------+--------------+
Now, we are going to find number of Product sold for every weekday.
SELECT
WEEKDAY (Selling_Date) WeekDay,
COUNT(Product_id) Product_Sold
FROM
Product
GROUP BY WEEKDAY(Selling_Date)
ORDER BY WEEKDAY(Selling_Date);
Output :
+---------+--------------+
| WeekDay | Product_Sold |
+---------+--------------+
| 1 | 2 |
| 2 | 2 |
| 3 | 1 |
| 4 | 3 |
| 5 | 2 |
+---------+--------------+
Similar Reads
WEEK() Function in MySQL
WEEK() function in MySQL is a versatile built-in date function designed to extract the week number from a given date. This function is particularly beneficial for grouping and analyzing data based on weekly intervals, allowing for more insightful data interpretation and reporting. In this article, W
3 min read
WEEKOFYEAR() Function in MySQL
WEEKOFYEAR() function in MySQL is used to find the week number for a given date. If the date is NULL, the WEEKOFYEAR function will return NULL. Otherwise, it returns the value of week which ranges between 1 to 53. Note: The WEEKOFYEAR() function considers the first week of the year to be the week th
3 min read
YEARWEEK() Function in MySQL
YEARWEEK() function in MySQL is used to find year and week for a given date. If the date is NULL, the YEARWEEK() function will return NULL. Otherwise, it returns value of year which range from 1000 to 9999 and value of week which ranges between 0 to 53. Syntax : YEARWEEK(date, mode) Parameter : This
4 min read
REPEAT() function in MySQL
REPEAT() : This function in MySQL is used to repeat a string a specified number of times. Syntax : REPEAT(str, count) Parameters : This method accepts two parameter. str -Input String which we want to repeat. count -It will describe that how many times to repeat the string. Returns : It returns a re
2 min read
YEAR() Function in MySQL
YEAR() function in MySQL is used to find year from the given date. If the date is NULL, the YEAR() function will return NULL. Otherwise, it returns value range from 1000 to 9999. Syntax : YEAR(date) Parameter : This method accepts one parameter as mentioned above and described below : date : The dat
3 min read
POW() Function in MySQL
POW() function : This function in MySQL is used to return a results after raising a specified exponent number to a specified base number. For example if the base is 5 and exponent is 2, this will return a result of 25. Syntax : SELECT POW(x, y); Parameter : This method accepts two parameters as give
1 min read
TAN() Function in MySQL
TAN() function : This function in MySQL is used to return the tangent of a specified number. In any right triangle, the tangent of an angle is the length of the opposite side divided by the length of the adjacent side. Similarly, this can also be defined as tangent of x is the sine of x divided by t
1 min read
ORD() Function in MySQL
ORD() function in MySQL is used to find the code of the leftmost character in a string . If the leftmost character is not a multibyte character, it returns ASCII value. And if the leftmost character of the string str is a multibyte character, ORD returns the code for that character, calculated from
3 min read
SECOND() Function in MySQL
SECOND() function in MySQL is used to return the second portion of a specified time or date-time value. The first parameter in this function will be the date/Date Time. This function returns the seconds from the given date value. The return value (seconds) will be in the range of 0 to 59. In this fu
2 min read
TIME() Function in MySQL
The TIME() function in MySQL is used to extract the time portion from a date or datetime expression, returning the time in the format 'HH:MM'. This function is particularly useful when working with time components in databases, such as scheduling or logging systems. In this article, We will learn ab
4 min read