我将日期作为逗号分隔值传递,例如。param1 = 2012-01-12,2013-02-15,2012-12-01 这将被输入到我的程序中,以及如何获取作为参数传递给我的程序的所有日期的值。
我尝试过使用: select value from table1 where date_value in (param1); 但它给了我一个空集。
请告诉我如何解决它。
更新:
DELIMITER $$
CREATE FUNCTION test2(dates text)
RETURNS text READS SQL DATA
BEGIN
DECLARE abc text;
DECLARE hi text;
SET hi= concat('''',regex_replace('[,]',''',''',dates),'''');
select value into abc from table1 where date_time in (hi);
RETURN abc;
END;
$$
DELIMITER ;
我对该函数的输入将是多个日期:例如:2010-12-12,2012-12-10,.....
我的 regex_replace 函数将以这种格式返回日期:'2010-12-12','2012-12-10' 并将其设置为变量并传递它。
但我总是得到一个空集。我哪里出错了?