我想在orWhere子句(与教义)中的子查询做一个简单的查询。与教条/使用别名的错误使用子查询
与往常一样,学说试图每一个别名重命名和完全破坏查询...
下面是一个例子:
$q = Doctrine_Query::create()
->from('Actualite a')
->where('a.categorie_id =?', $id)
->orWhere('a.categorie_id IN (select id from cat.categorie as cat where cat.categorie_id =?)', $id)
->execute();
这在MySQL将使类似:
SELECT *
FROM actualite a
WHERE a.categorie_id = 1 OR a.categorie_id IN (SELECT cat.id FROM categorie cat WHERE cat.categorie_id = 1);
一切都是对的,但是再一次的教条破坏了它: 找不到类猫
每次我尝试做一些与Doctrine复杂的事情时,我都有别名错误。任何关于如何解决这个问题的建议或想法?
谢谢!
如果有什么要保留完整的表名? – ajreal 2010-12-03 18:44:07