@pearljy22
New Coder
Please help me. I have a problem, I can't get the day/s old.
[CODE lang="sql" title="EXAMPLE OUTPUT:"]2 MONTHS AND 14 DAYS
DECLARE n_yr INT(11);
DECLARE n_mon INT(4);
DECLARE n_day INT(4);
SELECT TIMESTAMPDIFF( YEAR, prev_dte, cur_dte ) INTO n_yr;
SELECT TIMESTAMPDIFF( MONTH, prev_dte, cur_dte ) % 12 INTO n_mon;
SELECT FLOOR( TIMESTAMPDIFF( DAY, prev_dte, cur_dte ) %30.5375 ) INTO n_day;
IF n_yr THEN
RETURN CONCAT(n_yr, IF(n_yr > 1, ' years', ' year'));
ELSEIF n_mon THEN
RETURN CONCAT(n_mon, IF(n_mon > 1, ' months ', ' month '), n_day, IF(n_day > 1, ' days', ' day'));
ELSE
RETURN CONCAT(n_day, IF(n_day > 1, ' days', ' day'));
END IF;[/CODE]
[CODE lang="sql" title="EXAMPLE OUTPUT:"]2 MONTHS AND 14 DAYS
DECLARE n_yr INT(11);
DECLARE n_mon INT(4);
DECLARE n_day INT(4);
SELECT TIMESTAMPDIFF( YEAR, prev_dte, cur_dte ) INTO n_yr;
SELECT TIMESTAMPDIFF( MONTH, prev_dte, cur_dte ) % 12 INTO n_mon;
SELECT FLOOR( TIMESTAMPDIFF( DAY, prev_dte, cur_dte ) %30.5375 ) INTO n_day;
IF n_yr THEN
RETURN CONCAT(n_yr, IF(n_yr > 1, ' years', ' year'));
ELSEIF n_mon THEN
RETURN CONCAT(n_mon, IF(n_mon > 1, ' months ', ' month '), n_day, IF(n_day > 1, ' days', ' day'));
ELSE
RETURN CONCAT(n_day, IF(n_day > 1, ' days', ' day'));
END IF;[/CODE]
Last edited by a moderator: