sql语句查询指定月份数据

要求:查询出emp表中1981年2月份入职的员工

常用的两种方式:

1.YEAR查询年,MONTH查询月

SELECT
    *
FROM
    emp
WHERE
    YEAR(HIREDATE)='1981' AND MONTH(HIREDATE)='2'

2.date_format (使用更多)

SELECT 
    *
FROM
    emp
WHERE
    DATE_FORMAT(hiredate,'%Y-%m') = '1981-02'

第二种方式,需要注意的是日期格式一定要正确

例如:

DATE_FORMAT(hiredate,’%Y-%m’) = ‘1981-2’
是无法查询到数据的,因为 %m 对应的月份格式就是: 01,02,03…12.

如果换成
DATE_FORMAT(hiredate,’%Y-%c’) = ‘1981-2’
就能查询到数据。

MySQL 日期格式

%Y    	代表四位年份;		**%y** 代表两位年份

%m    	代表月格式(01,02,03...12);		**%c** 代表月格式(1,2,3...12)

%d    	代表日

%H    	代表24小时制;	%h代表12小时制

%i    	代表分钟(00,-01,02...59)

%S或%s   代表秒(00,01,02...59)

你可能感兴趣的:(数据库,mysql,java,数据库,sql)