時間:2024-02-08 11:17作者:下載吧人氣:22
開發中遇到過問題就是對時間以半個小時分鐘分組,如統計08:00-08:30的人數,08:30-09:00的人數,貌似sql中沒有這樣的函數吧,直接從數據庫里查出來,在java里分組也太low了吧
想到方法1 自定義函數,自己實現時間的半個小時轉換,統計時調用函數
CREATE FUNCTION `date_half_hour_format`(in_date TIMESTAMP) RETURNS TIMESTAMP
BEGIN
DECLARE out_date TIMESTAMP;
DECLARE s_date VARCHAR(255);
DECLARE s_minute VARCHAR(2);
DECLARE int_minute INT;
SET s_minute = SUBSTRING(in_date, 15, 2);
SET int_minute = CAST(s_minute AS SIGNED);
IF int_minute <= 29 THEN
SET int_minute = 0;
SET s_date = CONCAT(LEFT(in_date, 14),’0′,int_minute);
ELSE
SET int_minute = 30;
SET s_date = CONCAT(LEFT(in_date, 14),int_minute);
END IF;
SET out_date = STR_TO_DATE(s_date,’%Y-%m-%d %H:%i’);
RETURN out_date;
END
網友評論