2
我创建了一个存储过程来获取2个给定日期之间的日期列表到一个临时表中。该临时表应该有2列:int类型的id和date类型的日期。问题是,在输出我只得到日栏,id列未定义。 我做错了什么?MySQL - 临时表中的未定义列
DELIMITER $$
CREATE DEFINER=`root`@`localhost` PROCEDURE `days`(IN dateStart DATE, IN dateEnd DATE)
BEGIN
CREATE TEMPORARY TABLE IF NOT EXISTS date_range (id INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY, day DATE);
Delete from date_range;
WHILE dateStart <= dateEnd DO
INSERT INTO date_range(day) VALUES (dateStart);
SET dateStart = DATE_ADD(dateStart, INTERVAL 1 DAY);
END WHILE;
END
这是调用和存储过程的输出:
不要在程序结束时选择任何东西吗? –
@juergend no。我打电话给这样的程序:'call days('2014-07-01','2014-07-31'); SELECT * FROM date_range;' – laura
它适用于我 –