Ich habe versucht, SUM() zu verwenden, aber es hat nicht funktioniert, vielleicht verwende ich es falsch. DieseSumme mehrerer Werte in verschiedenen Tabellen
ist, wie meine Tabellen fertig sind, ich habe 3: Schicksal, Hotel und Reserve
Table 1 = destiny
des_id | des_name | des_price
1 | Brazil | 800
2 | Paris | 900
Table 2 = hotel
hot_id | hot_name | hot_price
1 | Snowflake | 200
2 | Aurora | 300
Table 3 = reserve
res_id | hotel_id | destiny_id | res_total
1 | 1 | 1 |
Ich möchte, dass die res_total = hot_price + destiny_price der ausgewählten IDs in der Reserve, aber ich bin immer eine abusrd Menge, die
wie das Gesamtbefinden 6000 oder 23000. nicht passieren sollten Dies ist der Code, den ich versucht habe: fehlt
Select res_id, (Sum(hotel_price) + Sum(destiny_price)) as res_total
from reserve, hotel, destiny
group by res_id;
Hinweis: * Niemals * Kommas in der FROM-Klausel verwenden. * Verwenden Sie immer die richtige explizite 'JOIN'-Syntax. –
Wo ist die WHERE-Klausel? – dstudeba
Cross Join führt zu # records in Tabelle 1 * records in Tabelle 2 * records in Tabelle 3 und dann zu Ihrer Summierung. vs INNER JOIN auf geeignete Keys ... Einfach gesagt ... Sie haben keine Definition, wie die Tabellen in Beziehung stehen, so dass alle Datensätze mit allen Datensätzen in jeder Tabelle verbunden werden. Normalerweise eine sehr schlechte Idee. – xQbert