Ich möchte eine MySQL-Tabelle mit der Aggregatfunktion auf JOIN ON-Anweisung beitreten. Ich bin mir nicht sicher, ob ich es richtig mache.mysql JOIN ON-Anweisung mit MAX-Funktionen
Hier sind meine Tabellen. Table_1
(drei Spalten):
- ID
- sid
- tid
Table_2
(vier Spalten)
- t2id
- t2sid
- t2tid
- t2value
Table_3
(zwei Spalten)
- t3id
- t3title
Die ersten beiden Tabellen, Table_1
und Table_2
sie die Beziehung auf table_1.sid
und table_2.t2sid
, und ich habe kein Problem j sie zu salben.
Jetzt wollte ich die table_3.t3id
an die table_2 t2tid = 2
dann table_t2value
.
Hier ist, was ich bisher als MySql Aussage haben:
SELECT MAX(CASE WHEN table2.t2tid=1 THEN table_2.t2value AS 1stid),
MAX(CASE WHEN table_2.t2tid=2 THEN table_2.t2value AS 2ndid)
FORM table_1
LEFT JOIN table_2
ON table_2.t2sid = table_1.sid
LEFT JOIN table_3
ON table_3.t3id = (i want to join the table_2.t2tid=3 THEN table_2.t2value)
würde ich in der Lage sein, sie so, wie ich will mitmachen?
"ich möchte die tabelle_2.t2tid = 3 THEN table_2.t2value" - was bedeutet das? Können Sie uns Ihre gewünschte Ausgabe zeigen? – WillardSolutions
Hallo EPB, möchte ich die Tabelle_3.t3title Daten in meine Abfrageergebnisse. Hier erfahren Sie, wie die Tabellen gespeichert und miteinander verknüpft sind. table_1 und table_2 Spalte sid, dass zwei Spalten die Beziehung haben. Lassen Sie uns sagen, wenn ich die Tabelle_1.sid und die Tabelle_2.sid abfrage. Ich werde die folgenden Ergebnisse in der SELECT-Anweisung erhalten, da die ersten Ergebnisse von table_2.t2value und table_2.t2value stammen. Jetzt möchte ich die tabelle_3 table_3.t3id zu den reuslts der Tabelle_2.t2tid = 3 dann table_2.t2value JOIN. Ich hoffe das hilft. – slphp