![](/img/trans.png)
[英]How to get the total number of fields with a certain value on PHP-MySQL
[英]How to get the value of last mysql fetch data? PHP-MySQL
我想做这个:
检查点的前10个值。
这是我的情况:
如果发现少于10条记录(行),例如给予奖励
如果得分排在前十位(在数百条记录/行中),则给予奖励。
所以,我要做的是(错误的方法):
SELECT points FROM `scores` WHERE id = '1' ORDER BY score DESC LIMIT 9 , 1
只有当我有9(至少10)个数据/记录时,这才起作用。
还有其他办法吗?
我正在考虑使用此(虽然不是很好):
SELECT points FROM `scores` WHERE id = '1' ORDER BY score DESC LIMIT 0 , 10
然后获取mysql_fetch_assoc数据的最后一个值。 因此,如何获取mysql_fetch_assoc数据的最后一个值?
上一个查询接近您想要的:
SELECT points FROM (
SELECT points, score
FROM scores
WHERE id = '1'
ORDER BY score DESC
LIMIT 10
) AS top_ten
ORDER BY score ASC
LIMIT 1
如果要坚持使用mysql_fetch_assoc获取最后一个值,可以使用mysql_data_seek。
像这样:
<?php
// ... $result is the result set from your query
$result_count = mysql_num_rows($result);
if ($result_count > 0)
{
mysql_data_seek($result, $result_count - 1);
}
$row = mysql_fetch_assoc($result);
?>
尝试使用此:
SELECT points FROM (SELECT points FROM scores
WHERE id = '1' ORDER BY score DESC LIMIT 10) ORDER BY score LIMIT 1
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.