Problem: Ich versuche eine Abfrage in SQLite erstellen, die alle Spalten (Stats) für eine bestimmte 'ID' in Tabelle1 anzeigen und es mit zwei separaten Ergebnissen aus Tabelle2 verbinden .Unerwünschte doppelte Tabellenergebnisse beim Zusammenführen von zwei Tabellen in SQLite
Wenn ein JOIN oder ein linker JOIN, ende I mit folgendem Ergebnis up: (TABLE1-Statistik) + (TABLE2 skill1) + (TABLE1-Statistik) + (TABLE2 skill2)
Tabelle 1 zweimal dupliziert weil es in TABLE2 zwei Fähigkeiten gibt. Wenn es 5 Fähigkeiten gäbe, würde ich TABLE1 wie oben beschrieben fünfmal duplizieren.
Was ich will, ist: (TABLE1 Statistiken) + (TABLE2 SKILL1Bonus) + (TABLE2 SKILL2Bonus)
Tabelle 1 steht für eine Kategorie eines Zeichens mit dem Schlüssel 'id'. Jeder Charakter hat eine unterschiedliche Anzahl an Fähigkeiten. Jedes Qualifikationsmerkmal ist definiert als (table2.skillID). Die Anzahl der Fähigkeitsmerkmale, die ein Charakter haben kann, ist bis zu 15. Ich versuche eine Abfrage zusammenzustellen, die die Basisstatistik des Charakters (table1. *) Mit all ihren Boni aus ihren Fähigkeiten (table2.bonus)
zeigtBeispiel
-- Table 1 --
id = 8
strength = 12
agility = 11
... mehr Statistiken
-- Table 2 --
id = 8
skillID = 3
bonus = 20% chance to dodge
id = 8
skillID = 4
bonus = 5% chance to crit
die nächstgelegene ich bekommen habe, und was hat mir das obige Ergebnis bekommen:
SELECT * FROM table1
LEFT JOIN table2 ON table1.id = table2.id
WHERE table1.id = 8;
Jede Hilfe auf der Richtung, die ich gehen sollte, würde sehr geschätzt werden. Ich bin mir nicht sicher, ob Unterabfragen eine bessere Route wären. Vielen Dank!
Was passiert, wenn in table2 mehr als zwei Zeilen mit derselben ID vorhanden sind? Setzen Sie einige Regeln und erwartete Ausgabe * Daten * in der Frage – GurV
gibt es Duplikate der 'ID' in Tabelle2 von Entwurf. Die 'ID' repräsentiert eine Kategorie von Charakteren. Es ist der Primärschlüssel in Tabelle1 und der Fremdschlüssel in Tabelle2. – dubba
Was ich suche, ist alles von table1 (wo ID = 8) zusammen mit beiden Fähigkeiten aus Tabelle 2 angezeigt werden (wo ID = 8) – dubba