Advertisement
eramic

sql upiti vjezba 4

Sep 6th, 2015
213
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
SQL 2.43 KB | None | 0 0
  1. /*Kreirati upit koji prikazuje korisničko ime zaposlenika (Sve iza znaka „\“, kolona LoginID),
  2. starost i godine staža. Uslovi su da zaposlenik ima više od 50 godina,
  3. više od 10 godina staža i da je ženskog spola.
  4. Listu sortirati po godinama staža opadajućim redoslijedom. */
  5.  
  6. USE AdventureWorks2014
  7.  
  8. SELECT RIGHT([LoginID],len([LoginID])-CHARINDEX('\',[LoginID])) as 'korisnicko ime',
  9.     datediff(yy,[BirthDate],getdate()) as 'starost',datediff(yy,[HireDate],getdate()) as 'staz'
  10. from [HumanResources].[Employee]
  11. where datediff(yy,[BirthDate],getdate())>50 and datediff(yy,[HireDate],getdate())>5 and [Gender] like 'F'
  12. --stavio sam vise od 5 staza jer nema niko preko 10
  13.  
  14. /*Prikazati minimalnu, maksimalnu i prosječnu cijenu proizvoda ali samo onih gdje je cijena (ListPrice) veća od 0.
  15. Koristiti aliase.*/
  16.  
  17. select  min([ListPrice]) as minimalna, max([ListPrice]) as maximalma , avg([ListPrice]) as prosjecna
  18. from [Production].[Product]
  19. where [ListPrice]>0
  20.  
  21. /* Prikazati ukupan broj proizvoda po modelu (ProductModel9.
  22. Lista treba da sadrži ID modela proizvoda i ukupan broj proizvoda.
  23. Uslov je da proizvod pripada nekom modelu i da je ukupan broj proizvoda veći od 1.*/
  24.  
  25. select PM.Name, count(P.ProductModelID) as 'broj proizvoda'
  26. from [Production].[Product] as P join [Production].[ProductModel] as PM
  27.         on P.ProductModelID = PM.ProductModelID
  28. where P.ProductModelID is not null
  29. group by PM.Name
  30. having count(P.ProductModelID)>1
  31. order by 'broj proizvoda' desc
  32.  
  33. /* Kreirati upit koji prikazuje 10 najprodavanijih proizvoda.
  34. Lista treba da sadrži ID proizvoda i ukupnu količinu prodaje.
  35. Provjeriti da li ima proizvoda sa istom količinom prodaje kao zapis pod rednim brojem 10? */
  36.  
  37. select top 10 with ties [ProductID], sum([OrderQty]) as ukupno
  38. from [Sales].[SalesOrderDetail]
  39. group by ProductID
  40. order by ukupno desc
  41.  
  42. /* Kreirati upit koji prikazuje zaradu od prodaje proizvoda.
  43. Lista treba da sadrži ID proizvoda, ukupnu zaradu bez popusta, te ukupnu zaradu sa popustom.
  44. Iznos zarade zaokružiti na dvije decimale. Uslov je da se prikaže zarada samo za stavke gdje je bilo popusta.
  45. Listu sortirati po zaradi opadajućim redoslijedom. */
  46.  
  47. select [ProductID], [OrderQty]*[UnitPrice] as 'zarada bez popusta',
  48.         ([OrderQty]*[UnitPrice])-([OrderQty]*[UnitPrice])*[UnitPriceDiscount] as 'zarada sa popustom'
  49. from [Sales].[SalesOrderDetail]
  50. where [UnitPriceDiscount]>0
  51. order by 'zarada bez popusta' desc
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement