# Suchanfrage 2 Tabellen und eine ID



## Joern (1. Mai 2006)

Hallo,

ich brauche folgendes SQL Statement:

Pseudocode:

 Wähle attr1, atrr2,... aus Tabelle1 wo Tabelle1.userID = Tabelle2.id AND Tabelle1.userID = Tabelle2.id = übergebener ID.


Ok ist kompliziert.. folgender Hintergrund.

Ich habe 2 Tabellen. Eine in der Jobs stehen und in einer anderen in der Praktikas stehen. Dann habe ich noch eine UserTabelle. Jeder User hat eine eigene ID. Diese ID findet man auch bei jedem eingetragenene Job oder Praktikum. Also ein User kann mehrere Praktika oder Jobs machen, aber jeder Job usw.. gehört eindeutig zu einem Studenten.

Nun benötige ich eine Abfrage in der ich ein Attribut aus der UserTabelle habe und alle Einträge aus der JobTabelle benötige wo dieses Attribut mit drin ist.

Hoffe das war halbwegs verständlich  :roll:


----------



## Kawa-Mike (1. Mai 2006)

SELECT a.attr1,a.attr2, . . . , b.attr_n, b.attr_n1 FROM Tabelle1 a, Tabelle2 b WHERE a.userid = b.userid

dieser SELECT erstellt ein JOIN der beiden Tabellen. Sie werden mit den Namen a und b angesprochen. Durch a. bzw. b. weiss man ob es sich um eine Spalte der Tabelle1 oder eine Spalte der Tabelle2 handelt.

Die Ergebnistabelle enthält dann für jeden User soviele Zeilen wie es Jobs und Praktika gibt.

Gruss
Mike


----------



## Joern (1. Mai 2006)

Mhja... ok so hatte ich das Statement auch , allerdings ist das Statement innerhalb einer Methode aufgerufen. 
Und diese Methode bekommt die UserID übergeben für welche die Einträge ausgelesen werden sollen.

Wo übergebe ich in deinem Statement meine Variable für welche UserID dies geschehen soll. ?


----------



## André Uhres (1. Mai 2006)

"... dein select ... and a.userid='"+userId+"'";


----------

