2 Spalten aus einer Subquery ziehen
-
Mahlzeit !
Ich generiere im Moment ein SQL-Statement und bin grad auf die Anforderung gestoßen, dass eine Sub-Query nicht eine Spalte, sondern 2 Spalten zurückliefern soll.
Derzeit sieht das so aus:SELECT tab1.number, tab1.count AS 'Anzahl', (SELECT TOP 50 PERCENT X.name FROM kunden X WHERE tab1.name = x.name ) AS 'Kunde' FROM tab1,kunden WHERE ...... etc.
Ich würde mir aber wünschen, dass ich mit dem Statement nicht nur den Namen aus der Tabelle Kunde auslesen, sondern auch z.B. das Alter. Lässt sich das irgendwie innerhalb dieses Statements einbauen ?
Danke
Gawan
-
Nimm doch einfach ein zweites Sub-Select-Statement, das dann die 2. Spalte zurückgibt.
Aber besser wäre es wohl, wenn du generell einen Join beider Tabellen verwendest, also
SELECT tab1.number, tab1.count AS 'Anzahl', kunden.name, kunden.alter FROM tab1,kunden WHERE tab1.name = x.name AND ...;
...wobei ich jetzt nicht weiß, was " TOP 50 PERCENT " bedeutet...
-
Es kann ab und zu vorkommen dass bei dem Subselect mehr als 1 Element vorkommt - da dann das statement mit einem fehler abbricht fange ich das mit dem top 50 percent ab - da kommen nur die 50 "höchsten" einträge