Unanswered: problem with 'group by' aspect of sql statement!
I'm building a reverse auction style site using mysql and php.
I have two tables bid table and proposal table.
I'm trying to print to screen all the proposals made by a particular user!
$result = mysql_query("SELECT proposal.*, count(bid.proposalid) AS bids,SYSDATE(), TIME_FORMAT(TIMEDIFF(tomorrowtime, SYSDATE()), '%H hours, %i minutes') AS timeleft
LEFT JOIN bid ON proposal.proposalid = bid.proposalid
WHERE proposal.username = '$username' AND proposal.time > NOW()- INTERVAL 1 DAY
GROUP BY bid.proposalid");
The problem is that only those proposals that have bids made on them are printing to screen.
So for example if four proposals are made by a user, I want all four to be printed, however at the moment the situation is that if only two of them have bids on those two bids are the only two that get printed!
I'm pretty sure its something to do with the group by statement as when I remove it, it seems to work fine, but I consequently lose the critical "count bids" info.
, COUNT(bid.proposalid) AS bids
, TIME_FORMAT(TIMEDIFF(tomorrowtime, CURRENT_TIMESTAMP)
, '%H hours, %i minutes') AS timeleft
ON bid.proposalid = proposal.proposalid
WHERE proposal.username = '$username'
AND proposal.time > proposal.proposalid - INTERVAL 1 DAY