如何使用doctrine 1.2查询选择所有没有关系记录的表记录?
我尝试过这种事情(下面),但它告诉我没有t.Relations,可能是因为我在Relation表中设置了FK关系? 看起来这应该很容易,但无法理解。看看子查询,但无法理解这是否是正确的事情。 感谢。
$q = Doctrine_Query::create()
->from('Table t')
->leftJoin('t.Relations r')
->where('t.user_id = ?',$userId)
->andWhere('t.Relations IS NULL')
return $q->execute();
许多简化架构:
Table:
columns:
id:
type: integer
notnull: true
user_id:
type: integer
notnull: true
relations:
User:
class: User
foreign: id
local: user_id
foreignAlias: Users
Relation:
columns:
table_id:
type: integer
notnull: true
relations:
Table:
class: Table
foreign: id
local: table_id
foreignAlias: Relations
答案 0 :(得分:0)
在不知道您的错误消息的情况下,我只是猜测,但错误可能在您的andWhere(..)
声明中。表格t
没有属性Relation
,而是您要查看表格r
:
$q = Doctrine_Query::create()
->from('Table t')
->leftJoin('t.Relations r')
->where('t.user_id = ?',$userId)
->andWhere('r.table_id IS NULL')
return $q->execute();