MySQL 中的 MONTH()函数
MySQL 中的MONTH ()函数用于从给定日期查找月份。当日期的月份部分为 0 时返回 0,否则返回 1 到 12 之间的月份值。
句法 :
MONTH(date)
范围 :
该函数接受一个参数
- date :我们要从中提取月份的日期或日期时间。
返回:它返回从 1 到 12 的值范围。
示例-1:
使用 MONTH()函数查找当前月份。
SELECT MONTH(NOW()) AS Current_Month;
输出 :
CURRENT_MONTH |
---|
11 |
示例 2 :
使用 Month()函数从给定的 DateTime 中查找月份。
SELECT MONTH('2015-09-26 08:09:22') AS MONTH;
输出 :
MONTH |
---|
9 |
示例 3 :
当日期为 NULL 时,使用 Month()函数从给定的 DateTime 中查找月份。
SELECT MONTH(NULL) AS Month ;
输出 :
示例 4:
MONTH函数还可用于查找每个月销售的总产品。为了演示创建一个名为的表。
产品 :
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)
);
现在向 Product 表插入一些数据:
INSERT INTO
Product(Product_name, Buying_price, Selling_price, Selling_Date)
VALUES
('Audi Q8', 10000000.00, 15000000.00, '2018-01-26' ),
('Volvo XC40', 2000000.00, 3000000.00, '2018-04-20' ),
('Audi A6', 4000000.00, 5000000.00, '2018-07-25' ),
('BMW X5', 5000500.00, 7006500.00, '2018-10-18' ),
('Jaguar XF', 5000000, 7507000.00, '2019-01-27' ),
('Mercedes-Benz C-Class', 4000000.00, 6000000.00, '2019-04-01' ),
('Jaguar F-PACE', 5000000.00, 7000000.00, '2019-12-26' ),
('Porsche Macan', 6500000.00, 8000000.00, '2020-04-16' ) ;
所以,我们的表看起来像:
MONTH |
---|
NULL |
Product_id | Product_name | Buying_price | Selling_price | Selling_Date |
---|---|---|---|---|
1 | Audi Q8 | 10000000.00 | 15000000.00 | 2018-01-26 |
2 | Volvo XC40 | 2000000.00 | 3000000.00 | 2018-04-20 |
3 | Audi A6 | 4000000.00 | 5000000.00 | 2018-07-25 |
4 | BMW X5 | 5000500.00 | 7006500.00 | 2018-10-18 |
5 | Jaguar XF | 5000000.00 | 7507000.00 | 2019-01-27 |
6 | Mercedes-Benz C-Class | 4000000.00 | 6000000.00 | 2019-04-01 |
7 | Jaguar F-PACE | 5000000.00 | 7000000.00 | 2019-12-26 |
8 | Porsche Macan | 6500000.00 | 8000000.00 | 2020-04-16 |
现在,我们将使用 MONTH()函数查找每月销售的产品数量。
SELECT
MONTH (Selling_Date) month,
COUNT(Product_id) Product_Sold
FROM Product
GROUP BY MONTH (Selling_Date)
ORDER BY MONTH (Selling_Date);
输出 :
MONTH | PRODUCT_SOLD |
---|---|
1 | 2 |
4 | 3 |
7 | 1 |
10 | 1 |
12 | 1 |