📜  MySQL 中的 YEAR()函数

📅  最后修改于: 2022-05-13 01:55:14.853000             🧑  作者: Mango

MySQL 中的 YEAR()函数

MySQL 中的YEAR ()函数用于从给定日期查找年份。如果日期为 NULL,则 YEAR()函数将返回 NULL。否则,它返回 1000 到 9999 之间的值范围。

句法 :

YEAR(date)  

参数:此方法接受一个如上所述和如下所述的参数:

  • date :我们要从中提取年份的日期或日期时间。

返回:它返回从 1000 到 9999 的值范围。

示例 1:使用 Year()函数查找当前年份。

SELECT YEAR(NOW()) AS Current_Year;

输出 :

mysql> SELECT YEAR(NOW()) AS Current_Year;
+--------------+
| Current_Year |
+--------------+
|         2020 |
+--------------+
1 row in set (0.00 sec)

示例 2:使用 Year()函数从给定日期时间查找年份。

SELECT YEAR('2015-09-26 08:09:22') AS Year ;

输出 :

+------+
| Year |
+------+
| 2015 |
+------+

示例 3:当日期为 NULL 时,使用 Year()函数从给定的日期时间查找年份。

SELECT YEAR(NULL) AS Year ;

输出 :

+------+
| Year |
+------+
| NULL |
+------+

示例 4: YEAR函数还可用于查找一年中销售的总产品。为了演示创建一个名为的表。

产品 :

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-09-01'  ),
        ('Jaguar F-PACE', 5000000.00, 7000000.00, '2019-12-26'  ),
    ('Porsche Macan', 6500000.00, 8000000.00, '2020-06-16' ) ;

所以,我们的表看起来像:

mysql> SELECT * FROM Product;
+------------+-----------------------+--------------+---------------+--------------+
| 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-09-01   |
|          7 | Jaguar F-PACE         |   5000000.00 |    7000000.00 | 2019-12-26   |
|          8 | Porsche Macan         |   6500000.00 |    8000000.00 | 2020-06-16   |
+------------+-----------------------+--------------+---------------+--------------+

现在,我们将使用 YEAR()函数查找每年销售的产品数量。

SELECT 
    YEAR(Selling_Date) year, 
    COUNT(Product_id) Product_Sold
FROM 
    Product
GROUP BY YEAR(Selling_Date)
ORDER BY YEAR(Selling_Date);

输出 :

+------+--------------+
| year | Product_Sold |
+------+--------------+
| 2018 |            4 |
| 2019 |            3 |
| 2020 |            1 |
+------+--------------+