Возвращаются строки, чья сумма одного поля равна другому полю таблиц - PullRequest
0 голосов
/ 29 сентября 2019

У меня есть таблица платежей за работу, и при сопоставлении с транзакциями необходимо сопоставлять платежи в тот же день для того же клиента, которые равны одной транзакции за этот день.Мне удалось сопоставить, но я возвращаю только агрегированное итоговое значение, а не каждую строку.

Я понимаю, что требуется объединение, но я не смог сделать это правильно.

Где яam at:

$groupmatches = $con->query("
SELECT j1.*, j2.*
FROM jobs AS j1
JOIN (SELECT jobs.jobid, payments.paymentamount, payments.paymentjobno, COUNT(*) AS count
  FROM (jobs LEFT JOIN payments ON payments.paymentjobno = jobs.jobid)
  WHERE payments.paymentdate = '$dt' AND (payments.paymenttype = 1 OR payments.paymenttype = 2 OR payments.paymenttype = 4)
  GROUP BY jobs.chargeto
  HAVING SUM(payments.paymentamount) = '$at' AND COUNT(*) > 1) AS j2
ON j1.jobid = j2.paymentjobno;
");

Он сопоставляет и возвращает одну строку со значением подсчета количества строк, добавленных к совпадению, но я не могу вернуть каждую из этих строк.Что я делаю не так?

...