Witam
Potrzebuję dwóch grup danych uzyskiwanych z kilku tych samych tabel.
1) CENNIK TOWARÓW złożenie tabel: Cennik: Towary + Ceny + Cechy as f1 +
Cechy as f2
2) WSZYSTKIE CECHY towarów z cenika z 1)
W 1) - CENNIKU wyciągam z tab. Cechy tylko 2 konkretne cechy (Grupę,
Producent)
Natomiast w drugim potrzebuję już same cechy ale WSZYSTKIE tych towaów
uzyskanych
w pierwszym pytaniu.
1) Mój CENNIK to zapytanie:
SELECT
t.ID, t.Nazwa, c.Detal, f1.Value as Grupa, f2.Value as Producent
FROM
Towary as t
JOIN Ceny as c ON t.ID = t.ID
JOIN Cechy as f1 ON t.ID = f1.Towar AND f1.Key = 'Grupa'
LEFT JOIN Cechy as f2 ON t.ID = f2.Towar AND f2.Key = 'Producent'
WHERE f1.Value = 'Drukarki'
2) Moje WSZYSTKIE CECHY dało by zapytanie:
SELECT distinct f3.Key, f3.Value
FROM Cechy as f3
WHERE f3.Towar in (SELECT t.ID FROM [...to co wyżej przy cenniku...])
W sumie te drugie zapytanie mimo mniejszej dla mnie wagi jest bardziej
złożone od pierwszego.
CZY JEST METODA aby dane (towary) uzyskane z pierwszego zapytania
wykorzystać jakoś przy drugim??? BEZ PONOWNEGO ODPYTYWANIA BAZY?
Tab. Cechy ma postać:
Towar|Key|Value
1|Grupa|Drukarki
1|Producent|HP
1|Kolor|Czarny
2|Grupa|Klawiatury
2|Producent|Logitech
3|Ilośc guzików|101
Będę wdzięczny za wszelkie sugestie, baza to MSSQL.