sql liefert immer eine 2-dimensionale ergebnismenge in form einer tabelle. der inhalt dieser tabelle wird durch das sql statement spezifiziert.
einen transpose der achsen ist bei sql nicht vorgesehen. dies muß man aus der ergebnismenge selbst erledigen.
allerdings kann man in sql werte umsetzen, so daß bspw. aus einer 3 ein x wird. oder auch doppelte identische zeilen reduzieren.
die frage galt aber in erster linie der performance. hier ist es in jedem fall besser, mehrere tabellen mit sql zu verbinden und eine abfrage auszuführen, als im programm geschachtelt auf mehrere einzeltabellen abzufragen.
wichtig ist es, die anzahl der abfragen zu reduzieren.
im übrigen ist es nicht zwingend, primärschlüssel zu haben. daher galt der hinweis, spalten zu indizieren, welche in der suchbedingung benötigt werden.