【发布时间】:2011-08-01 18:47:54
【问题描述】:
我在我的 magento 数据库中编写了一个 mysql 存储过程来执行复杂的操作,并希望在我的 magento 代码中使用它们。我能够从我的 magento 代码中调用该过程并在数组中获取结果集。现在我想将此结果集用作模型来使用 joinattribute 进行进一步的连接,或者更具体地说,我想将此输出结果集从存储过程传输到集合中,以便我可以使用 getcollection 方法。我该怎么做?
【问题讨论】:
我在我的 magento 数据库中编写了一个 mysql 存储过程来执行复杂的操作,并希望在我的 magento 代码中使用它们。我能够从我的 magento 代码中调用该过程并在数组中获取结果集。现在我想将此结果集用作模型来使用 joinattribute 进行进一步的连接,或者更具体地说,我想将此输出结果集从存储过程传输到集合中,以便我可以使用 getcollection 方法。我该怎么做?
【问题讨论】:
来自thread on joining procedure results:
> 是否可以在单个查询中连接存储过程的结果表?
没有。
所以看起来你必须做很长的路要走,并使用数组作为参数。
// $collection is a collection
// $results is the stored procedure results as an array
$collection->addAttributeToFilter('ATTRIBUTE_NAME', array('in'=>$results));
有关集合的类似技巧,请参阅“其他比较运算符”here。
【讨论】: