【发布时间】:2013-05-28 05:47:54
【问题描述】:
我有这个查询,我想让它以 codeigniter 查询形式工作,所以想知道它是否可能。
这是我想以codeigniter自己的方式在Codeigniter中实现的查询。
use zorkif_next;
SELECT
`osp_job_status_track`.`StatusID`,
`osp_job_status_track`.`SubStatusID`,
`osp_job_sub_status`.`CurrentStatus`
FROM
(`osp_job_details`)
LEFT JOIN
`osp_job_status_track` ON `osp_job_status_track`.`JobID` = `osp_job_details`.`JobID`
LEFT JOIN
`osp_job_status` ON `osp_job_status`.`StatusID` = `osp_job_status_track`.`StatusID`
LEFT JOIN
`osp_job_sub_status` ON `osp_job_sub_status`.`SubStatusID` = `osp_job_status_track`.`SubStatusID`
LEFT JOIN
`hr_employee_details` ON `hr_employee_details`.`EmployeeID` = `osp_job_details`.`AssignToEmployeeID`
LEFT JOIN
`osp_job_type` ON `osp_job_type`.`JobTypeID` = `osp_job_details`.`JobtypeID`
WHERE
-- `isDefault` = 1
-- AND
CASE WHEN `osp_job_status`.`StatusID` = 2
THEN `osp_job_sub_status`.`CurrentStatus` = 3
ELSE `osp_job_status`.`StatusID` >= 2
END ;
那么如何在
中实现这个查询$this->db->where($where);
???
【问题讨论】:
-
没有办法在
CI中实现CASE。 CI SQL 库很弱 -
不确定在 CI 中是否可行。你可以去看看活动记录中都有什么。检查这个文件-system\database\DB_active_rec.php
-
@diEcho 因此,如果它不能以 codeigniters 的方式实现,那么如何在 codeigniter 中以简单的方式实现它,例如
$this->db->query('')?? -
$sql = 'Your complete mySQL query'然后$this->db->query($sql)
标签: php mysql codeigniter