我是Zend Framework的新手。
我理解Zend_Table的用法,并且可以使用与该类关联的表中的Zend函数来获取数据。
例如,我有一个视频表,而在另一个表中,我有视频与其所在类别之间的关联。
我有点难过如何激活框架中的以下选择:
SELECT * FROM video
,category
WHERE category
。category_id
= 3 AND video
。id
= category
。 video_id
任何建议都会很棒。
感谢。
答案 0 :(得分:2)
$db->select()->from('video')->joinInner('category','video.id = category.video_id')->where('category.category_id = ?',3)
BTW:看起来你的数据库设计错误了。你的视频表中应该有category_id(如果是1个视频 - > 1个类别)或者有连接表(M:N),但将视频ID存储在类别中似乎是错误的。
答案 1 :(得分:1)
我会使用Zend_Db_Select
:
$select = $this->db->select()->from(array('v' => 'video'))
->join(array('c' => 'category'),'v.id = c.video_id')
->where('c.category_id = ?', 3);
print_r($select->__toString());
输出:
SELECT `v`.*, `c`.* FROM `video` AS `v` INNER JOIN `category` AS `c` ON v.id = c.video_id WHERE (c.category_id = 3)