Codeigniter 其中_not _in不按数组值作为参数返回匹配

Codeigniter 其中_not _in不按数组值作为参数返回匹配,codeigniter,Codeigniter,试图获取traineeeid其中$arrTID不在tbl\u考勤处理中但下面的我的代码返回所有traineeeid来自tbl\u考勤处理中 如果我使用where_in,那么查询将返回绝对结果,这些TraineeID是真正匹配的。只是当我使用where\u not\u in时没有返回适当的值 型号: public function getNotMatch_TID($arrTID,$atnDate){ $this->db->select('TraineeID');

试图获取
traineeeid
其中
$arrTID
不在
tbl\u考勤处理中
但下面的我的代码返回所有
traineeeid
来自
tbl\u考勤处理中

如果我使用
where_in
,那么查询将返回绝对结果,这些
TraineeID
是真正匹配的。只是当我使用
where\u not\u in
时没有返回适当的值

型号:

public function getNotMatch_TID($arrTID,$atnDate){
        $this->db->select('TraineeID');
        $this->db->where_not_in('TraineeID', $arrTID);
        $this->db->where('attnDate', $atnDate);
        $query = $this->db->get('tbl_attendance_processed');

        return $query->result();
    }
控制器:

$arrTID = $this->input->post('Present');
$atnDate = $this->input->post('attnDate'); 
$nonMatch= $this->AttendanceModel->getNotMatch_TID($arrTID,$atnDate);
print_r($nonMatch);
回显上次查询:

表架构:

CREATE TABLE `tbl_attendance_processed` (
 `ID` int(11) NOT NULL AUTO_INCREMENT,
 `TraineeID` varchar(7) CHARACTER SET utf8 NOT NULL,
 `attnDate` date NOT NULL,
 `inTime` time NOT NULL,
 `outTime` time NOT NULL,
 `Status` varchar(10) NOT NULL,
 `ClassCount` tinyint(1) NOT NULL DEFAULT '1',
 `Reason` varchar(255) NOT NULL,
 PRIMARY KEY (`ID`)
) ENGINE=InnoDB AUTO_INCREMENT=3186 DEFAULT CHARSET=latin1

$arrTID
应该是一个数组当然它是一个数组,当我在查询中使用
where_in
时,查询返回此
$arrTID
。打印您的查询
echo$this->db->last_query()
并请留言,我为TraineeID字段添加了最后一个查询的数据类型?并直接在phpmyadmin中运行最后一个查询。