简体   繁体   中英

MySQL PHP for SELECT AVG(column) returns Resource ID 3

I want to get the average value of my ratings column for my review table. This is what has been done so far

$averagereviewquery = "SELECT AVG(review_rating) from reviews where product_id=".$primarykey;               
$averagereviewresult=mysql_query($averagereviewquery);

                if($insert_review){ //successful insert
                    echo $averagereviewresult;
                }

what happens is averagereviewresult returns "Resource Id 3". What do i do to change it to show me the average value?

mysql_query does return a resource. You need to expicitly read the value from your query in order to get the result. One way is to use mysql_result :

echo mysql_result($averagereviewresult, 0);

You missed fetching the actual data

$result = mysql_result($averagereviewquery, 0);

You need extract the result in to an array first.

$averagereviewquery = "SELECT AVG(review_rating) from reviews where product_id=".$primarykey;               
$averagereviewresult=mysql_query($averagereviewquery);

if($insert_review){ //successful insert
        $row = mysql_fetch_array($averagereviewresult);

        echo $row[AVG(review_rating)];
}
SELECT AVG(review_rating) AS review_rating_avg ...

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM