【发布时间】:2015-07-08 15:47:46
【问题描述】:
我不确定我做错了什么......
我有一个简单的查询:
SELECT * FROM locations WHERE (ID IN (1, 2, 3, 4, 5));
现在我只是把那个查询做成了一个存储过程,参数类型为 LONGTEXT
sp_FetchMultipleLocations(IN argLocations LONGTEXT)
BEGIN
SELECT * FROM locations WHERE (ID IN (argLocations));
END;
然后我在该参数中调用具有多个值的存储过程:
CALL sp_FetchMultipleLocations('1, 2, 3, 4, 5');
但是 where 子句中的 IN 语句似乎不起作用,它只显示第一个 (1) 位置...为什么会这样?
谢谢
【问题讨论】:
标签: mysql stored-procedures parameters where-clause