用php编写的查询编写SQL查询

时间:2015-05-11 10:30:12

标签: php mysql

我正在尝试用php编写的查询编写mysql查询。

首先是查询

    $query="delete from friends  where UserA=?, UserB=? 
    or (UserB=?, UserA=?)";

我想从数据库中删除朋友条目。该条目可以按任何顺序排列。例如,可以输入朋友关系作为UserA成为UserBUserB的朋友,成为UserA的朋友。但无论如何只有一个条目。所以要检查确保删除条目我试图在任何两种情况下找到并删除它。

其次,
我很困惑将参数传递给上面的sql查询。上述查询中的参数为四。所以我猜测要传递四个参数。但我认为如果我这样做$stmt->bind_param('ii',$userAid, $userBid)这应该工作???

$stmt=$mysqli->stmt_init();
$stmt->prepare($query);
$stmt->bind_param('iiii',$userAid, $userBid, $userAid, $userBid);
$stmt->execute(); 

1 个答案:

答案 0 :(得分:1)

让我们总结一下:

/* fixed the query */
$query="delete from friends where (UserA=? AND UserB=?) OR (UserB=? AND UserA=?)";

/* invoke the query */
$stmt=$mysqli->stmt_init();
$stmt->prepare($query);
// (1 parameter for each "?" )
$stmt->bind_param('iiii',$userAid, $userBid, $userAid, $userBid);
$stmt->execute();