有人可以解释为什么以下DQL有效吗?

时间:2010-02-21 14:13:25

标签: orm doctrine

$user = Doctrine_Core::getTable('User')
    ->createQuery('u')
    ->innerJoin('u.Profile p')
    ->where('p.username = ?', 'jwage')
    ->fetchOne();

它看起来与我习惯的SQL完全不同,特别是u是什么意思?

有人可以通过合理的解释说清楚吗?

2 个答案:

答案 0 :(得分:1)

$q = Doctrine::getTable('User')->createQuery('u')->where('u.username = ?', 'JRL');

是一种简写方法:

$q = Doctrine_Query::create()->from('User u')->where('u.username = ?', 'JRL');

createQuery方法声明为:createQuery($alias = '')

答案 1 :(得分:0)

在我看来,u表示User表。它只是一个简短的别名。