十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
select * from 表 where 这是必须的
创新互联公司专注于工农企业网站建设,响应式网站设计,电子商务商城网站建设。工农网站建设公司,为工农等地区提供建站服务。全流程按需定制制作,专业设计,全程项目跟踪,创新互联公司专业和态度为您提供的服务
year,month,dayofyear是mysql的函数,分别是取得年,月,和当前时间在本年是第几天的3个函数
date就是你保存时间的字段
等号后面的当然条件啦。
TIMESTAMPDIFF函数,需要传入三个参数,第一个是比较的类型,可以比较FRAC_SECOND、SECOND、
MINUTE、
HOUR、
DAY、
WEEK、
MONTH、
QUARTER或
YEAR几种类型,第二个和第三个参数是待比较的两个时间,比较是后一个时间减前一个时间SELECT
TIMESTAMPDIFF(YEAR,'2012-10-01','2013-01-13');
表示两者相差的年
我假定你的入职日期字段格式为date,并且字段名为 t_date,那么下面这条语句可能可以满足你的要求.
select * from( SELECT year(now())-year(t_date) as t_year FROM `test_t` where year(t_date) 1990 ) as tmp_data where t_year 10
====================
说明一下思路:
子查询计算出入职的年数,并将结果添加字段别名t_year,这个语句只select了t_date字段,其他字段请按需要添加.
SELECT year(now())-year(t_date) as t_year FROM `test_t` where year(t_date) 1990
然后使用另一条查询来得到大于10年的职工.
select * from (子查询语句) as temp_data where t_year10
SET @a = '2015-09-15 12:00:00';SET @b = '2011-09-15 12:00:00';SELECT YEAR(@a) - YEAR(@b);