Ich habe ein bisschen Schwierigkeiten zu verstehen JOINS mit mysql.zu verstehen, wie mysql verbindet Arbeit
ich habe 3 Tabellen. gold_sended) Benutzer-ID | gesendet
register) user_id | gold_swap_id
google_users) oauth_uid | portal_name
jetzt was getan werden muss, ist wie folgt. zuerst muss ich alle portal_names von google_users wo oauth_id = das gleiche wie register.user_id
Das nächste, was ich auch überprüfen müssen, wenn die register.user_id = gold_sended.user_id
Wenn das user_id aus dem Register der ist same als gold_sended user_id und dann
den Portalnamen anzeigen. Wenn nicht, dann nichts anzeigen.
Ich habe nie mit Joins gearbeitet, also bin ich ein bisschen verloren, wie man es richtig macht.
Ok ist jetzt gelöst.
SELECT
google_users.portal_name,
gold_sended.user_id,
gold_sended.date,
COUNT(gold_sended) as total_runs
FROM
register_gold_swap
LEFT JOIN google_users on register_gold_swap.user_id=google_users.oauth_uid
LEFT JOIN gold_sended on register_gold_swap.user_id=gold_sended.user_id
WHERE
register_gold_swap.gold_swap_id = "1"
AND register_gold_swap.status = "1"
GROUP BY google_users.portal_name
Gibt jetzt die korrekten Daten aus. Vielen Dank an alle
Wie wärs mit einem [visual Beispiel] (https://blog.codinghorror.com/a-visual-explanation-of-sql-joins/), die auch beinhaltet Beispielabfragen? –
@PaulT. Das ist das Problem, ich weiß nicht einmal, wie ich damit anfangen soll. –
Beginnen Sie mit jedem grundlegenden Buch oder Tutorial – Strawberry