Połączenie zapytań w jednej tabeli

0

Witam,
czy mógłby mi ktoś pomóc w poniższym problemie?

Tworzę zapytanie w MS SQL. Chciałbym złączyć dwa selecty w jeden wynik.
Pierwszy select:

SELECT Distinct (Towary.idTowaru), Towary.nazwaTW ,Towary.stanMG
FROM Towary INNER JOIN
PozycjeDostawy ON Towary.idTowaru = PozycjeDostawy.idTowaru
where Towary.idTowaru in (167,166)

Zwraca dwa wiersze z trzema kolumnami (idTowaru, nazwaTW, stanMG).

Drugi select:

SELECT SUM((PozycjeDostawy.ilośćWolnej* PozycjeDostawy.cena/ Towary.stanMG)) as WartośćŚrednia
FROM PozycjeDostawy INNER JOIN
Towary ON PozycjeDostawy.idTowaru = Towary.idTowaru
where PozycjeDostawy.idTowaru in (167,166)
group by PozycjeDostawy.idTowaru

Zwraca dwa wiersze z jedną kolumną (WartośćŚrednia).

Chciałbym żeby zapytanie z drugiego selecta pojawiało się jako czwarta kolumna tj:
(idTowaru, nazwaTW, stanMG, WartośćŚrednia).

Czy można zrobić jakiś union lub join? Jak to zrobić?

0

Właśnie sobie poradziłem:

SELECT     Towary.idTowaru, Towary.nazwaTW, Towary.stanMG, JednostkiMasy.nazwa,
(SELECT SUM((PozycjeDostawy.ilośćWolnej* PozycjeDostawy.cena/ Towary.stanMG))) as WartośćŚrednia
FROM         Towary INNER JOIN
                      PozycjeDostawy ON Towary.idTowaru = PozycjeDostawy.idTowaru INNER JOIN
                      JednostkiMasy ON Towary.jm = JednostkiMasy.idJM
                                            where Towary.idTowaru in (167,166)
                      group by Towary.idTowaru, Towary.nazwaTW, Towary.stanMG,JednostkiMasy.nazwa
0

Tak, działa. O taki efekt mi chodziło.

1 użytkowników online, w tym zalogowanych: 0, gości: 1