我想在一个特定ID上的两个表之间做一个连接。
$q = Doctrine_Query::create()
->select('e.*, i.itemName, i.itemtypeId')
->from('Model_EventItem e')
->leftJoin('Model_Item i ON e.itemId = i.itemId')
->where('e.eventitemId = ?', $event->eventId)
->orderBy('i.itemName ASC');结果是空的,尽管我的eventId有一个值...你能帮帮我吗?我有一个关于DQL-joins的教程吗?在Doctrine文档的帮助下,我不能正确地理解它。
谢谢!
另外,我有与Zend框架相结合的原理。
发布于 2010-06-23 03:29:38
您需要向模型添加关系并使用该关系连接表
$q = Doctrine_Query::create()
->select('e.*, i.itemName, i.itemtypeId')
->from('Model_EventItem e')
->leftJoin('Model_EventItem.Model_Item i')
->where('e.eventitemId = ?', $event->eventId)
->orderBy('i.itemName ASC');发布于 2010-12-21 16:50:19
您应该将左连接中的名称从Model_EventItem更改为e
$q = Doctrine_Query::create()
->select('e.*, i.itemName, i.itemtypeId')
->from('Model_EventItem e')
->leftJoin('Model_EventItem.Model_Item i')
->where('e.eventitemId = ?', $event->eventId)
->orderBy('i.itemName ASC');发布于 2010-06-22 16:35:49
$q = Doctrine_Query::create()
->select('e.*, i.itemName, i.itemtypeId')
->from('Model_EventItem e, e.Model_Item i')
->where('e.eventitemId = ?', $event->eventId)
->orderBy('i.itemName ASC');https://stackoverflow.com/questions/3085763
复制相似问题