我的数据库如下所示:
我试图为产品拍卖找到最低的独特竞标者。我还想显示该最低独特出价者的用户名。最低的唯一出价基于productid
,其中每个产品都有不同的ID。
请帮忙。我尝试过以下代码:
<?php
$username=$_SESSION['userName'];
$sql="SELECT bidamount,
userName
FROM bid
WHERE description = '$username'
AND bidamount =
(SELECT min(lowest_bid.bidamount)
FROM bid lowest_bid
WHERE lowest_bid.description = '$username'
GROUP BY lowest_bid.bidamount HAVING count(DISTINCT lowest_bid.userName) = 1
ORDER BY bidamount LIMIT 1)";
$query=mysql_query('$sql') or die("problem with query");
?>
它出了什么问题?
答案 0 :(得分:1)
删除查询周围的单引号。它们可以防止对变量进行插值。
$query=mysql_query($sql) ;
答案 1 :(得分:0)
我不知道为什么在查询中需要子查询。 我想你在ORDER BY中想念DESC
$sql="SELECT bidamount,
userName
FROM bid
WHERE description = '$username'
ORDER BY bidamount DESC LIMIT 1 ";