2012-11-30 12 views
5

Mam problem z tabelą, którą próbuję utworzyć w Visual Studio 2010. Nie jestem do końca pewien, jak sformułować moje zapytanie SQL, które tworzy moje źródło danych.Zapytanie SQL z wieloma tabelami dla warunków

Zasadniczo mam dwie tabele. Jeden z nich zawiera nazwy plików obrazów i ma dwie kolumny: picturefile (PK) i username. Druga tabela zawiera trzy kolumny username: pierwsza kolumna definiuje nazwę użytkownika, druga jest nazwą przyjaciół użytkownika, aby utworzyć relacje przyjacielskie, a trzecia kolumna to RelationshipID.

Chciałbym, aby moje zapytanie tworzyło tabelę, która pokazuje wszystkie zdjęcia z tabeli zdjęć, które są własnością przyjaciół obecnego użytkownika. Mam parametr @currentuser, który może być użyty Więc to będzie tabela ze zdjęciami Twojego przyjaciela.

Próba miałem pamiętać, jestem bardzo początkujący, to:

SELECT picturefile, username 
FROM  pictures_table1 
WHERE (username = (SELECT User2 FROM friendslist_table1 WHERE  friendslist_table1.Username1 = @currentuser AND friendslist.Username2 <> @currentuser)) 

To daje błąd mówiący podzapytanie nie może zwracać wartości mulitple.

Dziękuję.

Odpowiedz

2

Proszę spojrzeć na funkcję JOIN, robi dokładnie to, co chcesz.

+0

Zrobi. Dziękuję Ci – user1824836

3
SELECT f.friendname,p.picturefile from pictures_table1 p 
INNER JOIN friendslist_table1 f 
ON p.username = f.username 
WHERE f.username = @currentuser 
Powiązane problemy