56,678
社区成员
发帖
与我相关
我的任务
分享
mysql_query("SET AUTOCOMMIT=0");//设置为不自动提交,因为MYSQL默认立即执行
mysql_query("BEGIN");//开始事务定义
$sql_m="INSERT INTO mar_sum(sum_uid,sum_fen,sum_type,sum_time) SELECT nl_uid,SUM(nl_fen) as q,nl_ew,DATE_FORMAT(nl_time,'%Y-%m-%d') AS OrderDay FROM mar_user_log where nl_uid=".$Cookies0." and nl_ew=3 and date_format(nl_time,'%Y-%m-%d')<curdate() GROUP by OrderDay ";
if(!mysql_query($sql_m)){
mysql_query('rollback');//判断当执行失败时回滚
exit('打不开?请在公共平台截图你的问题,');
}
$sql_n="Delete FROM mar_user_log WHERE nl_uid=".$Cookies0." and nl_ew=3 and date_format(nl_time,'%Y-%m-%d')<curdate() ";
if(!mysql_query($sql_n)){
mysql_query('rollback');//判断当执行失败时回滚
}
mysql_query('commit') or exit(mysql_error());//执行事务
mysql_query("SET AUTOCOMMIT=1");
}
$ip_sql="select id from mar_user ";
$res9=_query($ip_sql);
$i=0;
while (!!$rs1=_fetch_array($res9)){
$Cookies0 = $rs1['id'];
$sql_m="INSERT INTO mar_sum(sum_uid,sum_fen,sum_type,sum_time) SELECT nl_uid,SUM(nl_fen) as q,nl_ew,DATE_FORMAT(nl_time,'%Y-%m-%d') AS OrderDay FROM mar_user_log where nl_uid=".$Cookies0." and nl_ew=3 and date_format(nl_time,'%Y-%m-%d')<curdate() GROUP by OrderDay ";
_query($sql_m);
$sql_n="Delete FROM mar_user_log WHERE nl_uid=".$Cookies0." and nl_ew=3 and date_format(nl_time,'%Y-%m-%d')<curdate() ";
_query($sql_n);
}
$ip_sql="select id from mar_user ";
$res9=_query($ip_sql);
$i=0;
while (!!$rs1=_fetch_array($res9)){
$Cookies0 = $rs1['id'];
$sql_m="INSERT INTO mar_sum(sum_uid,sum_fen,sum_type,sum_time) SELECT nl_uid,SUM(nl_fen) as q,nl_ew,DATE_FORMAT(nl_time,'%Y-%m-%d') AS OrderDay FROM mar_user_log where nl_uid=".$Cookies0." and nl_ew=3 and date_format(nl_time,'%Y-%m-%d')<curdate() GROUP by OrderDay ";
_query($sql_m);
$sql_n="Delete FROM mar_user_log WHERE nl_uid=".$Cookies0." and nl_ew=3 and date_format(nl_time,'%Y-%m-%d')<curdate() ";
_query($sql_n);
}
能否给出具体代码.... 这样删除的话...需要添加limit 而且我测试了下...最多只能循环5000,再多就超时了...