Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Wie verbinde ich zwei Tabellen und vergleiche sie? (Ich habe mehrmals gefragt, aber ich konnte keine Antwort finden.)

Ich denke, das ist es, wonach Sie suchen. Lassen Sie mich wissen, wenn Sie etwas anderes brauchen. Sie sollten wahrscheinlich chart_num in credit_card haben, damit Sie die Tabellen zusammenfügen können.

Select hpd.chart_num,
hpd.chart_name
hpd.visit,
hpd.card_amount_received,
cc.card_date, 
CASE WHEN hpd.card_amount_received = SUM(cc.advenced_amount) THEN hpd.card_amount_received  ELSE NULL END AS ‘amount’,
CASE WHEN hpd.card_amount_received > SUM(cc.advenced_amount) THEN ‘error’ ELSE ‘ok’ END AS ‘result’
 from hospital_payment_data hpd
LEFT JOIN credit_card ON cc.chart_num=hpd.chart_num AND 
date(cc.card_date) = date(hpd.visit)
GROUP BY hpd.chart_num, hpd.visit;

Es wäre wahrscheinlich eine gute Idee, eine client_visit-Tabelle zu haben, falls ein Kunde zweimal am Tag ins Büro kommt oder einen Zahlungsplan einrichtet, bei dem er am Tag, an dem er ins Büro kommt, nicht zahlt.