infophiliac Posted July 14, 2006 Share Posted July 14, 2006 I'm trying to send the following query from a page written with PHP:$query = "SELECT AVG(rating) FROM ratings WHERE rtime >= SUBDATE(NOW(), INTERVAL 2 HOUR) AND id=1";When I run the query from the MySQL command line, it comes back with exactly what it should. When I run the page with that query, it returns nothing (including no error message). I've debugged to the point where I know that the query works if I take out AVG(), but can't for the life of me see why.I'm running MySQL 4.0 and PHP 4.4.1 on FreeBSD.Any insights would be appreciated. Quote Link to comment Share on other sites More sharing options...
fenway Posted July 15, 2006 Share Posted July 15, 2006 Very strange... it can't return nothing! Quote Link to comment Share on other sites More sharing options...
infophiliac Posted July 16, 2006 Author Share Posted July 16, 2006 I haven't actually managed to wrap my head around all the why and wherefore, but I did solve the problem. The average needed to be assigned an alias, so "SELECT AVG(rating)..." became "SELECT AVG(rating) as r." Like I said, I'm still figuring out why that is so, but the immediate issue is resolved. Quote Link to comment Share on other sites More sharing options...
fenway Posted July 16, 2006 Share Posted July 16, 2006 Sounds like you were getting back a hash in PHP, and had no way to properly reference the expression column. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.