一、通过mysql数据库方式实现:
SELECT * FROM test

查询近五年数据的sql语句:
SELECT
YEAR,
NAME
FROM
`test`
WHERE
YEAR > YEAR (
DATE_SUB( CURDATE(), INTERVAL 5 YEAR ))
查询近五年数据结果:

CURDATE()函数:
SELECT CURDATE() FROM DUAL;

YEAR()函数:
SELECT YEAR(CURDATE()) FROM DUAL;

DATE_SUB()和INTERVAL函数:
SELECT DATE_SUB( CURDATE(), INTERVAL 5 YEAR ) FROM DUAL;
SELECT DATE_SUB( '2017-02-09', INTERVAL -5 YEAR ) FROM DUAL;


二、java代码方式实现功能:
查询当前年过去五年的第五年年份
public class DateTest {
public static void main(String[] args) {
Calendar calendar = Calendar.getInstance();
calendar.add(Calendar.YEAR, -5);
int year = calendar.get(Calendar.YEAR);
System.out.println("year = " + year);
}
}

sql语句可以改写为:
SELECT
year,
name
FROM
`test`
WHERE
YEAR > 2018
查询结果:

文章介绍了如何使用MySQL数据库的SQL语句以及Java代码来查询近五年内的数据。在MySQL中,通过比较YEAR字段与当前日期减去5年的结果进行筛选;在Java中,利用Calendar类获取当前年份并回溯5年。这两种方法都用于从test表中提取符合条件的year和name信息。
7382

被折叠的 条评论
为什么被折叠?



