0
所以我在我的數據庫稱爲表「周」,我這些年來的每星期儲存像這樣:存儲過程的MySQL 5.5.16
table weeks(id, year, num_week, date_min, date_max)
注意:我的星期從星期四開始到星期四結束。
既然是痛苦將通過線上的每個周線,我要創建這個存儲過程,這裏就是我想出了:
DELIMITER |
CREATE PROCEDURE proc_insert_weeks()
BEGIN
SELECT year, num_week, date_min, date_max INTO @year, @num_week, @date_min, @date_max
FROM weeks
ORDER BY date_min DESC LIMIT 1;
SET @date_min = DATE_ADD(@date_max INTERVAL 1 DAY);
SET @date_max = DATE_ADD(@date_min INTERVAL 6 DAY);
SET @year= YEAR(@date_min);
IF @num_week < 52 THEN SET @num_week = @num_week + 1;
ELSE SET @num_week = 1;
END IF;
INSERT INTO weeks (year, num_week, date_min, date_max)
VALUES (@year, @num_week, @date_min, @date_max);
END |
DELIMITER ;
這樣的想法是採取的最後一個記錄該表格並在日期中添加1周,但我甚至無法將其粘貼到過程的創建中。
我在SELECT查詢後得到錯誤,有人能幫我弄清楚我做錯了什麼嗎?
感謝它正在工作!我會盡快接受這個答案 – NattyRoots