Proste zapytanie

AS
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 2
0

Wyświetlić nazwy produktów, które należą do podkategorii 1 lub 2.

Moje

Kopiuj
SELECT ProductSubcategoryID, Name
FROM Production.Product 
WHERE (ProductSubcategoryID IN (1,2))

wyświetla wszystkie z 1,2, nie wiem jak porównać :/

SE
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 318
0

Przepraszam, ale w czym tkwi problem?

Wyświetlić nazwy produktów

Nazwy, zatem kolumna ProductSubcategoryID na liście kolumn jest imho zbędna.

nie wiem jak porównać :/

Ale co z czym chcesz porównywać?

PS. Te nawiasy przy WHERE są zbędne.

KageYoshi
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 51
0
Adrian Stachurski napisał(a):

Wyświetlić nazwy produktów, które należą do podkategorii 1 lub 2.

wyświetla wszystkie z 1,2,

przecież właśnie to chcesz osiągnąć kompletnie nie rozumiem o co Ci chodzi? Nie wiesz jak porównać? To może dodaj do SELECTA jeszcze po prostu wyświetlanie podkategorii O_O...

AS
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 2
0

Panowie chodzi o to:
jeżeli kategoria 1 i kategoria 2 posiadają taką samą nazwę równocześnie to ma być wyświetlona.

w tej chwili co jet napisane wyświetlają się wszystkie produkty z id 1 i id 2

szarotka
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 552
1
Kopiuj
SELECT DISTINCT Name
FROM Production.Product
WHERE ProductSubcategoryID IN (1,2)
GROUP BY Name
HAVING count(Name)>1

Aczkolwiek zapytanie zakłada, że nie ma takich samych nazw w tej samej kategorii, jeśli miałbyś 2 takie same nazwy w 1. a 0 w 2., to nie spełni twoich oczekiwań i musiałbyś grupować jeszcze po ID.

ipsd
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: London
0
Kopiuj
;WITH CTE1
AS ( SELECT ProductSubcategoryID ,
            Name
     FROM   Production.Product
     WHERE  ProductSubcategoryID = 1 ) ,
      CTE2
AS ( SELECT ProductSubcategoryID ,
            Name
     FROM   Production.Product
     WHERE  ProductSubcategoryID = 2 )
SELECT *
FROM   CTE1
       INNER JOIN CTE2 ON CTE1.Name = CTE2.NAME;

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.