2016-03-28 10 views
0

Ich habe zwei Tabellen:Relationale Tabelle DB

Benutzer Tabelle:

ID | Name | UserGroupID | 

1 | John | 2 

2 | Sam | 11 

3 | Kiddo | 2 

4 | Sony | 3 

5 | Jabeen | 1 

UsersMachine Tabelle:

ID | MachineID | EmpID 
1 | 1 | 1 

2 | 2 | 1 

3 | 1 | 2 

4 | 2 | 2 

5 | 2 | 4 

6 | 3 | 5 

im bei der einzelnen SQL-Suche alle Benutzer zu wiederholen, durch Filterung FROM UserMachine WHERE MachineID = 2 ALSO FROM Users WHERE UsersGroupID IN (2,11) mit thes e Bedingungen

ich folgende reasults suche:

MachineID | UsersName | UsersGroupID 

2  | John | 2 

2 | Sam | 11 
+0

Haben Sie versucht, eine Join ? –

+0

Wie machen wir das? Ich bin schwach dabei –

Antwort

1

Check out verbindet. Sie erlauben uns, Daten aus zwei verschiedenen Tabellen in einer einzigen Abfrage zu verknüpfen:

SELECT um.MachineId, users.Name, users.UsersGroupID FROM UsersMachine um 
INNER JOIN Users users ON users.id = um.EmpID 
WHERE um.MachineID = 2 AND users.UsersGroupID IN (2,11) 

Dies ist wahrscheinlich der beste Beitrag (visuell) Ich habe, dass mir gesehen helfen mit beitritt: http://blog.codinghorror.com/a-visual-explanation-of-sql-joins/