MySQL Внутреннее объединение и суммирование двух столбцов - PullRequest
0 голосов
/ 04 июня 2018

У меня есть следующие таблицы

ТАБЛИЦА: встречи

ID | PRICE | PAID
48 |  100  | 180

ТАБЛИЦА: встречи_продукты

ID | APPOINTMENT_ID | PRODUCT_ID | TOTAL
10 |       48       |      1     | 30
11 |       48       |      9     | 30
12 |       48       |      6     | 30

Я хотел бы как-то выполнить запрос MySQL, который будет:

a) объединить две таблицы, СУММИТЬ «ВСЕГО» назначений_продуктов для каждого назначения_, и если «ОПЛАТА» не равна ЦЕНЕ (от назначений)таблица) + ИТОГО (из таблицы назначений), чтобы показать его.

Это то, что я сделал до сих пор:

select a.*, b.appointment_id as AppId, b.total as ProdTotal 
from appointments a 
INNER JOIN appointments_products b ON a.id = b.appointment_id

Но этот запрос не суммирует итоговую сумму для каждого назначения_ид

Ответы [ 3 ]

0 голосов
/ 04 июня 2018
select a.ID,a.PRICE,a.PAID,a.id as AppId,
       sum(b.total) as ProdTotal 
from appointments a 
INNER JOIN appointments_products b ON a.id = b.appointment_id
group by a.ID,a.PRICE,a.PAID;
0 голосов
/ 04 июня 2018

выберите b.Appointment_Id, a.price, a.PAID, a.id, сумму (b.total). AS TotalProd FROM assignments_products AS b внутренние объединения в качестве группы On Appointment_Id = a.Id с помощью Appointment_Id, a.Price, a.PAID, a.id ИМЕЕТ a.PAID! = (a.Цена + сумма (b.Total))

0 голосов
/ 04 июня 2018

Используйте, где проверить, равна ли цена оплаченной, и используйте группу, чтобы сгруппировать с назначением_идентификатора.

...