Rumah > pembangunan bahagian belakang > tutorial php > 各位大虾,帮我优化一下这个SQL语句

各位大虾,帮我优化一下这个SQL语句

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
Lepaskan: 2016-06-23 14:22:33
asal
997 orang telah melayarinya

sql 优化 mysql PHP

各位大虾,帮我优化一下这个SQL语句
$sql = " UPDATE `".$table."` SET $field = concat('".$value['result']."{hx}',now(),'{hx}".$value['name']."{hx}".$value['op']."{hx}".$value['suggestion']."') $auditing  WHERE `id`=".$value['id'];
global $conn;
mysql_query($sql,$conn);
if($auditing == ",`check`='yes'"){
$sql = "SELECT `mu_id` FROM `$table` WHERE `id` = $value[id] LIMIT 1";
$sql = mysql_query($sql,$conn);
$mu_id = mysql_fetch_array($sql);
$sql = "UPDATE `member_user` SET `check`='yes',`updatetime`=now() WHERE `id` = $mu_id[0]";
mysql_query($sql,$conn);
}
unset($conn);
return "审批成功";

回复讨论(解决方案)

把concat('".$value['result']."{hx}',now(),'{hx}".$value['name']."{hx}".$value['op']."{hx}".$value['suggestion']."')这个用php程序来实现,不要用sql的concat。

还有就是建立数据库索引了,这个对提高速度非常有帮助

还有吗下面那几句还能优化吗

if($auditing == ",`check`='yes'"){$sql = "SELECT `mu_id` FROM `$table` WHERE `id` = $value[id] LIMIT 1";$sql = mysql_query($sql,$conn);$mu_id = mysql_fetch_array($sql);$sql = "UPDATE `member_user` SET `check`='yes',`updatetime`=now() WHERE `id` = $mu_id[0]";mysql_query($sql,$conn);}可以改成if($auditing == ",`check`='yes'"){$sql = "UPDATE `member_user` SET `check`='yes',`updatetime`=now() WHERE `id` in (SELECT `mu_id` FROM `$table` WHERE `id` = $value[id] LIMIT 1)";mysql_query($sql,$conn);//语句简化了,对有没有提升不好说,不过如果索引要做好,应该会提升的,主要针对member_user.id,mu_id,id字段做索引}
Salin selepas log masuk

谢谢  baoxiaohua  简化了SQL 语句

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan