支持在单个查询中实现功能

4 php mysql mysqli

有没有办法优化以下单个查询?

$username=sanitize($_POST['username']);
$sql="SELECT * FROM $tbl_name WHERE username='$username' AND email='$email' AND amount='$donation_amount'";
$result=mysql_query($sql);
$num_rows = mysql_num_rows($result);

if($num_rows==1){
$sql1="UPDATE $tbl_name SET password='$new_password' WHERE username='$username' AND email='$email' AND amount='$donation_amount'";
$result1=mysql_query($sql1);
$num_rows1=mysql_affected_rows();
Run Code Online (Sandbox Code Playgroud)

Dee*_*ath 5

你可以省略SELECT$num_rows部分.

UPDATE子句足够:根据您的谓词(即WHERE条件)找到的记录将按照SET子句中的规定进行更新; 如果没有找到记录,表/ relvar将"按原样"(即不会进行更新.)

希望能帮助到你.

  • 你是对的,我首先误解了这个问题.你的答案是一个:) (3认同)
  • 谢谢你的理解..没关系..同样的事发生在我之前:) (2认同)