gpt4 book ai didi

php - PHP while循环中MYSQL更新和删除查询

转载 作者:行者123 更新时间:2023-11-29 19:06:32 25 4
gpt4 key购买 nike

我正在尝试更新用户投资组合表,以在用户出售某件商品时进行更新。我想从股票中减去 1,直到所需出售的股票数量达到 0。然后,当该项目的股票达到 0 时,我想从用户投资组合中删除该行。我相信我必须使用 while 循环和 TOP 命令,因为用户经常对同一商品进行多次不同的购买,因此它们存储在表中的不同记录中。我想我已经很接近了,但我无法在循环中运行更新或删除查询。

while ($sharesToSell >0) 
{
$sql="UPDATE TOP (1) portfolio SET shares= shares-1 WHERE
userid='".$userid."'AND songid='".$songID."';";
$result6 = $connection->query($sql);
$sharesToSell-=1;
if($sharesToSell>0)
{
$sql="DELETE FROM PORTFOLIO WHERE shares='0';";
$result7 = $connection->query($sql);
}
}

最佳答案

更新您的第一个查询并使用 limit 代替 top

 $sql="UPDATE TOP (1) portfolio SET shares= shares-1 WHERE 
userid='".$userid."'AND songid='".$songID."';";

$sql="UPDATE  portfolio SET shares= shares-1 WHERE
userid='".$userid."'AND songid='".$songID."' limit 1";

使用 limit 代替 top

关于php - PHP while循环中MYSQL更新和删除查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43446399/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com