【发布时间】:2016-06-28 20:51:36
【问题描述】:
假设我有一个如下数组(ID => 类型):
$contentIndexes = [
32 => 'news',
40 => 'blog',
68 => 'blog',
109 => 'document',
124 => 'news'
]
还有如下数据库表:
CREATE TABLE `ContentIndex` (
`ID` INT(11) NOT NULL AUTO_INCREMENT,
`ItemID` INT(11) NOT NULL,
`ItemType` VARCHAR(50) NOT NULL COLLATE 'utf8_unicode_ci',
//...
);
我将如何根据“ItemID”和“ItemType”列的组合检索每个ContentIndex(最好只使用一个查询)。
使用WHERE IN 不是一个选项,因为它不会考虑组合:
ContentIndexQuery::create()
->filterByItemID(array_keys($contentIndexes))
->filterByItemType($contentIndexes)
->find();
有什么想法吗?
【问题讨论】:
标签: php mysql multiple-columns propel