2017-01-02 147 views
0

目前在我的笨网站下面的作品同步后删除重复与谷歌日历:MySQL来笨活动记录,以删除重复记录

 $this->db->query("DELETE `e2`.* FROM `ea_appointments` AS `e1`, `ea_appointments` AS `e2` 
     WHERE `e1`.`id` > `e2`.`id` AND LEFT(`e1`.`id_google_calendar`,26) = LEFT(`e2`.`id_google_calendar`,26) 
     AND `e2`.`is_unavailable` = 0"); 

我怎样才能表达这种在活动记录格式?

回答

0
$this->db->where('e1.id > e2.id'); 
$this->db->where('LEFT(e1.id_google_calendar,26)=','LEFT(e2.id_google_calendar,26)'); 
$this->db->where('e2.is_unavailable = 0'); 
$this->db->delete('ea_appointments e1','ea_appointments e2'); 

LEFT()SQL:得到表2参数第一个字段[像ID或名称...]和第二个参数是从左边该字段的例如字符的数目:

左(姓名,3)

假设名称等于你好字比左复位HEL

$this->db->delete('ea_appointments e1','ea_appointments e2'); 
在本节

我们创建主表名别名,方便使用。

+0

我请求你请在你的答案中添加更多的上下文。仅有代码或仅链接的答案很难理解。如果您可以在帖子中添加更多信息,它可以帮助提问者和未来的读者。 – RBT

+0

非常好!我知道了。尼玛,你是一位非常好的老师。 –