diff --git a/mysql-test/r/func_time.result b/mysql-test/r/func_time.result index 164c3d610b6..16a1e5d01d7 100644 --- a/mysql-test/r/func_time.result +++ b/mysql-test/r/func_time.result @@ -1218,6 +1218,10 @@ t1 t2 SEC_TO_TIME( TIME_TO_SEC( t2 ) - TIME_TO_SEC( t1 ) ) QUARTER(d) 11:00:00 11:15:00 00:15:00 1 10:00:00 NULL NULL NULL DROP TABLE t1; +SELECT TIME_FORMAT(SEC_TO_TIME(a),"%H:%i:%s") FROM (SELECT 3020399 AS a UNION SELECT 3020398 ) x GROUP BY 1; +TIME_FORMAT(SEC_TO_TIME(a),"%H:%i:%s") +838:59:58 +838:59:59 End of 5.0 tests select date_sub("0050-01-01 00:00:01",INTERVAL 2 SECOND); date_sub("0050-01-01 00:00:01",INTERVAL 2 SECOND) diff --git a/mysql-test/t/func_time.test b/mysql-test/t/func_time.test index 41f0899cc66..4b952b66ff3 100644 --- a/mysql-test/t/func_time.test +++ b/mysql-test/t/func_time.test @@ -724,6 +724,13 @@ SELECT t1, t2, SEC_TO_TIME( TIME_TO_SEC( t2 ) - TIME_TO_SEC( t1 ) ), QUARTER(d) SELECT t1, t2, SEC_TO_TIME( TIME_TO_SEC( t2 ) - TIME_TO_SEC( t1 ) ), QUARTER(d) FROM t1 ORDER BY a DESC; DROP TABLE t1; + +# +# Bug #20293: group by cuts off value from time_format +# +# Check if using GROUP BY with TIME_FORMAT() produces correct results + +SELECT TIME_FORMAT(SEC_TO_TIME(a),"%H:%i:%s") FROM (SELECT 3020399 AS a UNION SELECT 3020398 ) x GROUP BY 1; --echo End of 5.0 tests #