(закрыто)sql запрос. group by

Phoenix

есть таблица транзакций
время
откуда
куда
сколько
тип
хочу получить сумму однотипных транзакций(совпадают коды, "откуда" и "куда") за отпределённую дату.
SELECT
asrc.name, adst.name, sum(transactions.amount)
FROM accounts asrc, accounts adst,transactions
WHERE
transactions.dst = adst.number AND
transactions.src = asrc.number AND
UNIX_TIMESTAMP(transactions.date) BETWEEN UNIX_TIMESTAMP('2007-10-1') AND UNIX_TIMESTAMP('2007-10-31') AND
transactions.code=111
GROUP BY
asrc.name,adst.name
что я делаю не так?
он показывает какие-то очень сильно большие цифры. такое ощущение, что складывает лишний раз что-то.

kruzer25

Ну так убери группировку и посмори, что выдаст.
Зафиксируй asrc.id и посмотри, что выдаст.
Зафиксируй adst.id с asrc.id и посмотри, что выдаст.

Phoenix

чудеса.
если этот запрос в phpmyadmin написать - то всё ок.
а в пхп левые цифры.
 
$q="SELECT asrc.name, adst.name, sum(transactions.amount) ".
" FROM accounts asrc, accounts adst,transactions,codes ".
" WHERE ".
" transactions.dst = adst.number ".
" AND transactions.src = asrc.number ".
" AND $time_cond ".
" AND transactions.code=$code ".
" GROUP BY asrc.name,adst.name";
$dbresult2 = db_query($q);
info_print($q);
while($row2 = mysql_fetch_row($dbresult2 {
list ($from, $to,$sum) = $row2;
if($amount != 0)
print "$from >> $to : $sum <br>";
}
}

Phoenix

mysqladmin скормил то, что выдал info_print.

Phoenix

нашёл косяк.
было
FROM accounts asrc, accounts adst,transactions,codes
вместо
FROM accounts asrc, accounts adst,transactions
Оставить комментарий
Имя или ник:
Комментарий: