MySQL存储过程参数

时间:2009-07-24 22:19:37

标签: mysql

我想从数据库中获取x个项目,我想知道是否有办法 将一些数字列表传递给与WHERE IN一起使用的存储过程?

SELECT item_id, item_description
FROM items
WHERE item_id IN ( NEED_LIST_OF_IDS_HERE );

我是否应该为此查询使用存储过程并在应用程序中构建sql?

或者我应该为每个item_id进行单独的数据库调用吗?

注意:项目不是表格的实际名称,所以不要抨击我选择不好的名字,我只是隐藏实现。

1 个答案:

答案 0 :(得分:0)

一年前的未解答问题......

如果你没有使用IN子句,你当然可以在存储过程中生成/准备sql并在那里执行它。参数化IN子句更加困难。

如何传入id列表,在存储过程中创建临时表,然后连接到items表?