Kategoria: Zaczynamy od zera

Zadanie 12.

Z tabeli Products wybierz (ProductID, ProductName) produkty:

a) należące do kategorii nr 7

b) takie, gdzie cena jednostkowa jest większa niż 15

c) w cenie do 10 lub powyżej 50

d) których nazwa na drugim miejscu ma literę ‚e’

Baza: Northwind, Tabela: dbo.Products, Kolumny: ProductID, ProductName, CategoryID, UnitPrice, , Wyniki: a) 5 rows, b) 51 rows, c) 18 rows, d) 5 rows

Rozwiązanie

SELECT ProductID, ProductName

FROM dbo.Products

a) WHERE CategoryID = 7

b) WHERE UnitPrice > 15

c) WHERE UnitPrice < 10 OR UnitPrice > 50

d) WHERE ProductName LIKE '_e%'

[collapse]

Zadanie 11.

Z tabeli Orders wybierz (OrderID, CustomerID) zamówienia:

a) dostarczone między 1 maja a 15 października 1997

b) dostarczone do Australii, Niemiec i Wielkiej Brytanii

c) obsługiwane przez przewoźnika o id 2

d) dostarczone do miast, których nazwa zaczyna się na litery od A, B, C i D

Baza: Northwind, Tabela: dbo.Orders, Kolumny: OrderID, CustomerID, ShippedDate, ShipCountry, ShipVia, ShipCity, Wynik: a) 184 rows, b) 178 rows, c) 326 rows, d) 271 rows

Rozwiązanie

SELECT OrderID, CustomerID

FROM dbo.Orders

a) WHERE ShippedDate >= '19970501' AND ShippedDate < '19971016'

lub inaczej: WHERE ShippedDate BETWEEN '19970501' AND '19971015'

b) WHERE ShipCountry in('Australia', 'Germany', 'UK')

lub: WHERE ShipCountry = 'Australia' or ShipCountry = 'Germany' or ShipCountry = 'UK'

c) WHERE ShipVia = 2

d) WHERE ShipCity LIKE '[A-D]%'

[collapse]

Zadanie 10.

Z tabeli Employees (EmployeeID, FirstName, LastName) wybierz:

a) pracowników z UK

b) pracowników, którzy nie są z Londynu

c) urodzeni po 1960 roku

d) wszystkich panów

Baza: Northwind, Tabela: dbo.Employees, Kolumny: EmployeeID, FirstName, LastName, Country, City, BirthDate, TitleOfCourtesy, Wynik: a) 4 rows, b) 5 rows, c) 3 rows, d) 3 rows

Rozwiązanie

SELECT EmployeeID, FirstName, LastName

FROM dbo.Employees

a) WHERE Country = 'UK'

b) WHERE City <> 'London'

c) WHERE BirthDate > '19610101'

d) WHERE TitleOfCourtesy = 'Mr.'

[collapse]

Zadanie 9.

Z tabeli klientów wybierz kraj, miasto i nazwę firmy. Nazwa kraju ma zaczynać się literą A lub B.

Baza: Northwind, Tabela: dbo.Customers, Kolumny: Country, City, CompanyName, Wynik: 16 rows

36

Rozwiązanie

SELECT Country, City, CompanyName
FROM dbo.Customers
WHERE Country LIKE '[A-B]%'
ORDER BY Country, City;

[collapse]

Zadanie 8.

Pokaż te zamówienia klienta o id SAVEA, które były obsługiwane przez pracowników o id 1, 3 lub 9.

Baza: Northwind, Tabela: dbo.Orders, Kolumny: CustomerID, OrderID, EmployeeID, Wynik: 9 rows

29

Rozwiązanie

SELECT CustomerID, OrderID, EmployeeID

FROM dbo.Orders

WHERE CustomerID = 'SAVEA' AND EmployeeID IN(1, 3, 9)

ORDER BY OrderID, EmployeeID;

[collapse]

Zadanie 7.

Dla zamówień o numerach od 10755 do 10847 (włącznie) ustal id klienta oraz datę zamówienia.

Baza: Northwind, Tabela: dbo.Orders, Kolumny: OrderID, CustomerID, OrderDate, Wynik: 93 rows

28

Rozwiązanie

SELECT OrderID, CustomerID, OrderDate

FROM dbo.Orders

WHERE OrderID BETWEEN 10755 AND 10847

ORDER BY OrderID;

[collapse]

Zadanie 6.

Dla klienta o ID SAVEA wybierz wszystkie zamówienia złożone po 1 czerwca 1997.

Baza: Northwind, Tabela: dbo.Orders, Kolumny: CustomerID, OrderID, OrderDate, Wynik: 25 rows

27

Rozwiązanie


SELECT CustomerID, OrderID, Orderdate

FROM dbo.Orders

WHERE CustomerID = 'SAVEA' AND OrderDate >= '19970601'

ORDER BY OrderDate, OrderID;

[collapse]

Zadanie 3.

Znajdź pracowników zatrudnionych między październikiem 1993 a marcem 1994. Wynik posortuj według daty zatrudnienia.

Baza: Northwind, Tabele: dbo.Employees, Kolumny: FirstName, LastName, HireDate, Wynik: 4 rows

7

Rozwiązanie

SELECT FirstName, LastName, HireDate
FROM dbo.Employees
WHERE HireDate >= '19931001' AND HireDate < '19940401'
ORDER BY HireDate;

[collapse]
« Starsze wpsiy