这似乎不起作用:
/// delete emails first
$this->db->where('DateSent', 'DateSent!=NULL');
$this->db->delete('Emails');
我想我需要使用一个循环。不知道怎么做这个。有人可以帮忙吗?
干杯
答案 0 :(得分:4)
如果您要查看非常有用的CodeIgniter用户指南,您会看到操作符应作为第一个参数的一部分而非第二个参数。这应该解决它:
$this->db->where('DateSent !=', 'NULL');
$this->db->delete('Emails');
答案 1 :(得分:1)
试试这个:
$this->db->query('
DELETE FROM `Emails`
WHERE id NOT IN (
SELECT id
FROM (
SELECT id
FROM `Emails`
WHERE `Emails`.`DateSent` = NULL
) foo
);
);
查询取自SQL query: Delete all records from the table except latest N?然后修改
答案 2 :(得分:0)
首先,您需要将所选值存储到数组中,并说“$ checked”
$checked = implode(',',$checked); //then it looks array('id1','id2','id3',..);
然后你可以删除为
$this->db->where("iUserId in",$checked);
$this->db->delete('my_table');
那就是它。它对我有用。我希望它对你有用。接受它是否有用