Alter Table SQL - pomoc

Alter Table SQL - pomoc
KA
  • Rejestracja:około 9 lat
  • Ostatnio:ponad 6 lat
  • Postów:9
0

Cześć, mam przed sobą takie dwa zadania i problem z ich rozwiązaniem.
Poniżej podsyłam treści zadań oraz to co udało mi się zdobyć do tej pory.
Liczę na Waszą pomoc.

Zadanie 1.
Do tabeli "Kategorie" dodaj kolumnę o nazwie "Produkty", w której będą po przecinku wypisane wszystkie produkty, które należną do danej kategorii.

Moje rozwiązanie

Kopiuj
use Northwind
Alter table Categories
Add Products nvarchar(40)

update Categories
set Products=p.ProductName
from Categories
join Products p on p.CategoryID=Categories.CategoryID

Jednak wypisuje ono tylko 1 produkt z danej kategorii zamiast wszystkich.

Zadanie 2.
Do tabeli "Produkty" dodaj kolumnę o nazwie "Dostawy", w której obok każdego produktu będzie jego ostatnia data zamówienia.

Moje rozwiązanie:

Kopiuj
use Northwind
Alter table Products
Add ostatnie_zam date

update Products
set ostatnie_zam=OrderDate
from Orders o
join [Order Details] od on o.OrderID=od.OrderID
join Products p on od.ProductID=p.ProductID

Jednak nie wiemy jak zawęzić wyświetlanie daty do daty najnowszej

Liczę że na forum znajdzie się dobra osoba, która mi pomoże

kate87
Co znaczy "wypisane po przecinku"?
KA
Wypisanie po przecinku: Produkt1,Produkt2,Produkt3..... I to ma być w 1 kolumnie np: Kategoria 1 | Produkt1,Produkt2,Produkt3 Kategoria 2 | Produkt4,Produkt5,Produkt6
KA
  • Rejestracja:około 9 lat
  • Ostatnio:ponad 6 lat
  • Postów:9
0

Wypisanie po przecinku: Produkt1,Produkt2,Produkt3..... I to ma być w 1 kolumnie
np:
Kategoria 1 | Produkt1,Produkt2,Produkt3
Kategoria 2 | Produkt4,Produkt5,Produkt6

kate87
  • Rejestracja:ponad 15 lat
  • Ostatnio:ponad 3 lata
0

Jeny co za zadanie w dodatku uczące złych praktyk.
Ale co Ci pokazuje select z

Kopiuj
select * 
from Categories
join Products p on p.CategoryID=Categories.CategoryID

Jak na moje po prostu trzeba sklejać funkcją substr i dalej ||', '|| tylko że jeśli używasz Northwinda to pewnie będzie MSSQL a tam będą pewnie + zamiast normalnego znaku sklejania ||

S9
  • Rejestracja:prawie 11 lat
  • Ostatnio:dzień
  • Postów:123
PA
  • Rejestracja:ponad 22 lata
  • Ostatnio:około 3 godziny
  • Postów:3879
0

Która wersja SQL servera?

Marcin.Miga
  • Rejestracja:prawie 17 lat
  • Ostatnio:12 dni
  • Postów:2792
1

Ale chwila. On miał dodać kolumnę. Nie ma ani słowa zeby tam takie wartości wpisać...

PA
W sumie racja

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.