获得当前时间差

来源:互联网 发布:创建视图的sql语句实例 编辑:程序博客网 时间:2024/06/07 17:57

sql

DECLARE param_second BIGINT;

DECLARE param_minute BIGINT;
DECLARE param_hour BIGINT;
DECLARE param_day BIGINT;
DECLARE param_month BIGINT;
DECLARE param_year BIGINT;
DECLARE param_return VARCHAR(10) DEFAULT '刚刚';


SET param_second = UNIX_TIMESTAMP(NOW())-UNIX_TIMESTAMP(param_biggerTime);
SET param_minute = param_second/60;
SET param_hour = param_minute/60;
SET param_day = param_hour/24;
SET param_month = param_day/30;
SET param_year = param_month/12;

IF param_year>0 THEN RETURN CONCAT(param_year,' 年前');
ELSEIF param_month>0 THEN RETURN CONCAT(param_month,' 月前');
ELSEIF param_day>0 THEN RETURN CONCAT(param_day,' 天前');
ELSEIF param_hour>0 THEN RETURN CONCAT(param_hour,' 小时前');
ELSEIF param_minute>0 THEN RETURN CONCAT(param_minute,' 分钟前');
ELSE RETURN param_return;

END IF; 



java

public static String getLastTime(Date biggerTime, Date smallerTime) {
long daterange = biggerTime.getTime() - smallerTime.getTime();
long time = 1000 * 3600 * 24;
long day = daterange / time;
long month = daterange / time / 30;
long year = daterange / time / 30 / 12;
long hour = daterange / 1000 / 60 / 60;
long minute = daterange / 1000 / 60;
while (daterange >= 0) {
if (year > 0) {
String lastime = null;
lastime = year + "年前";
return lastime;
} else if (month > 0) {
String lastime = null;
lastime = month + "个月前";
return lastime;
} else if (day > 0) {
String lastime = null;
lastime = day + "天前";
return lastime;
} else if (hour > 0) {
String lastime = null;
lastime = hour + "小时前";
return lastime;
} else if (minute > 0) {
String lastime = null;
lastime = minute + "分钟前";
return lastime;
} else {
return "刚刚";
}
}
return "刚刚";
}

0 0