Mam następujące stoły

Tabela: Spotkania

ID | PRICE | PAID
48 |  100  | 180

Tabela: Depidments_Products

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

Chciałbym jakoś uruchomić zapytanie MySQL, które będzie:

A) Dołącz do dwóch tabel, sumy "łącznie" spotkań_products dla każdej mianowanie_idu, a jeśli "płatne" nie jest równe ceny (z tabeli spotkań) + suma (z tabeli spotkań_produktów), aby go pokazać.

Oto, co zrobiłem do tej pory:

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

Ale to zapytanie nie sumowało całkowitej dla każdej wizyty

-1
Andr 4 czerwiec 2018, 11:37

3 odpowiedzi

Najlepsza odpowiedź
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
user8406805user8406805 4 czerwiec 2018, 08:56

Wykorzystaj gdzie sprawdzić, czy cena jest równa zapłacona i grupa użytkowania przez grupę z mianowaniem_d.

0
Peter 4 czerwiec 2018, 08:46

Wybierz b.Appointment_id, a.price, A.Paid, A.ID, sumę (B.Total) jako totalProd z mianowań_products jako b wewnętrzny łączyć spotkania jako A on Momatication_id = A.Id Group przez maworologicznie_id, a.price, a. Płatne, a.id mający A.paid! = (A.Price + suma (B.Total))

0
Nayan 4 czerwiec 2018, 09:17