加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – 嵌套选择使用Zend Db

发布时间:2020-12-13 18:10:49 所属栏目:PHP教程 来源:网络整理
导读:我有一个查询 select empl.idemp,(select em.firstnm from tbl_employeemaster em where em.idemp = empl.approvedby) as approvedby from tbl_empleaveapplication empljoin tbl_employeemaster emp on empl.idemp = emp.idempjoin tbl_leavemaster lvm on
我有一个查询
select empl.idemp,(select em.firstnm from tbl_employeemaster em where em.idemp = empl.approvedby) as approvedby from tbl_empleaveapplication empl
join tbl_employeemaster emp on empl.idemp = emp.idemp
join tbl_leavemaster lvm on empl.idleavemaster = lvm.idleavemaster

我需要使用zend db来构建这种类型的查询

以下是将字符串查询转换为Zend_Db_Select的方法
class Empleaveapplication extends Zend_Db_Table_Abstract
{
    protected $_name = 'tbl_empleaveapplication';
}

$table = new Empleaveapplication();

// create sub query
$subSql = $table->select()
                ->setIntegrityCheck(false)
                ->from(array('em' => 'tbl_employeemaster'),array('firstnm'))
                ->where('idemp = empl.approvedby','');

// main query
$sql = $table->select()
             ->setIntegrityCheck(false)
             ->from(array('empl' => 'tbl_empleaveapplication'),array('idemp','approvedby' => new Zend_Db_Expr('(' . $subSql . ')')))
             ->joinInner(array('emp' => 'tbl_employeemaster'),'empl.idemp = emp.idemp',array())
             ->joinInner(array('lvm' => 'tbl_leavemaster'),'empl.idleavemaster = lvm.idleavemaster',array());

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读