所以基本上我的模型中有一个 TIMESTAMPDIFF 查询来确定持续时间,并且我希望它在 View 中显示持续时间。问题是,它会显示错误。
请帮帮我,谢谢。
这是我对模型的查询 (model_attendance.php):
public function getOne($username){
$sql = "SELECT empnum FROM employees WHERE username='$username'";
$result = $this->db->query($sql);
$sql1 = "SELECT a.empnum,CONCAT(a.name,' ',a.midname,' ',a.lastname) AS
NAME,CONCAT(b.indate,' ',b.intime) AS 'TIMEIN',CONCAT(b.outdate,'
',b.outtime)AS 'TIMEOUT', TIMESTAMPDIFF(HOUR, 'TIMEIN','TIMEOUT') AS 'DUR'
FROM employees AS a
JOIN times AS b ON (a.empnum=b.userid)
WHERE b.indate BETWEEN
DATE(CONCAT(YEAR(CURRENT_TIMESTAMP),'-',MONTH(CURRENT_TIMESTAMP),'-','01'))
AND DATE(LAST_DAY(CURRENT_TIMESTAMP)) AND b.userid='".$result->row(0)->empnum."'";
$query = $this->db->query($sql1);
return $query->result();
}
最佳答案
要解决此问题,您需要将返回类型作为“false”传递给事件记录选择查询。
$this->db->select("TIMESTAMPDIFF(YEAR,a.date_birth, CURDATE()) AS age", false);
关于php - TIMESTAMPDIFF 不适用于 codeigniter 中的 mysql 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35095617/