Advertisement
eramic

sql upiti vjezba 3

Sep 6th, 2015
81
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
SQL 2.67 KB | None | 0 0
  1. /* Kreirati poruku dobrodošlice za kupce u sljedećem formatu:
  2. Dobrodošli Ime + Prezime, trenutno vrijeme je 11:20
  3. Upit raditi na dva načina, koristeći funkcije za rad sa stringovima i datumima.*/
  4.  
  5. USE [AdventureWorksLT2008R2]
  6. SELECT 'Dobro dosli : ' + [FirstName] + ' ' + [LastName] + ' trenutno vrijeme je: ' + CAST(datepart(hh,getdate()) AS nvarchar(2)) + ':'
  7.         + CAST(datepart(n,getdate()) AS nvarchar(2)) AS poruka
  8. FROM [SalesLT].[Customer]
  9.  
  10. SELECT 'Dobro dosli : ' + [FirstName] + ' ' + [LastName] +
  11. ' trenutno vrijeme je: ' + SUBSTRING(CAST(getdate()AS nvarchar),13,15) AS poruka
  12. FROM [SalesLT].[Customer]
  13.  
  14. /*Kreirati korisničke podatke za kupce: korisničko ime i lozinku.
  15. Korisničko ime kreirati koristeći mail adresu (sve do znaka @),
  16. a lozinku koristeći kolonu PasswordHash
  17. (preskočiti prvih 5 karaktera i uzeti narednih 8,
  18.  te ukoliko se pojavljuje karakter '+', zamijeniti ga sa '#').
  19.  Korisničke podatke kreirati samo za kupce koji imaju unesenu titulu a titula je 'Mr.'*/
  20.  
  21. SELECT LEFT([EmailAddress], CHARINDEX('@', [EmailAddress]) - 1) AS 'korisnicko ime',
  22.         REPLACE(SUBSTRING([PasswordHash],5,13),'+','#') AS password
  23. FROM [SalesLT].[Customer]
  24. WHERE [Title] LIKE 'Mr.'
  25.  
  26. /* Prikazati početak i kraj prodaje proizvoda, također, u listu uključiti i ukupno trajanje prodaje u mjesecima.
  27. Uslovi su: da je kraj prodaje proizvoda unesen i da naziv proizvoda počinje sa L ili M, a završava sa L. */
  28.  
  29. SELECT [SellStartDate], [SellEndDate], datediff(mm,[SellStartDate],[SellEndDate]) AS 'mjeseci prodaje'
  30. FROM [SalesLT].[Product]
  31. WHERE [SellEndDate] IS NOT NULL AND [Name] LIKE '[L,M]%L'
  32.  
  33. /*Prikazati broj narudžbe, broj dana do isporuke, ukupan iznos i način dostave.
  34. Kolonu način dostave ispisati malim slovima s tim da je početno slovo veliko.
  35. Ukupan iznos narudžbe treba biti između 200 i 1000.*/
  36.  
  37. SELECT [SalesOrderID], datediff(dd,[ShipDate],getdate()) AS 'dana do isporuke',
  38.          [SubTotal] , SUBSTRING([ShipMethod],1,1) + LOWER(SUBSTRING([ShipMethod],2,50))
  39. FROM [SalesLT].[SalesOrderHeader]
  40. WHERE [SubTotal] BETWEEN 200 AND 1000
  41.  
  42. /* Prikazati 10 najskupljih stavki narudžbe (ID stavke, cijena, količina, ukupno).
  43. Kolonu ukupno (izračunata kolona) zaokružiti na preciznost od dvije decimale.
  44. Također, potrebno je formatirati izlaz kolona cijena, količina i ukupno.
  45.  Koristiti sljedeće formate:
  46.     Cijena: 100.20 KM
  47.     Količina: 3 kom.
  48.     Ukupno: 300.60 KM */
  49.  
  50. SELECT top 10 [SalesOrderID], CAST(round([UnitPrice],2) AS VARCHAR)+' KM' AS cijena,
  51.     CAST([OrderQty] AS VARCHAR)+' kom.' AS kolicina,
  52.     CAST(round([UnitPrice]*[OrderQty],2) AS VARCHAR)+' KM' AS ukupno
  53. FROM [SalesLT].[SalesOrderDetail]
  54. ORDER BY [UnitPrice]*[OrderQty] DESC
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement