Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- --Ishod 8
- 1.--select
- -- po.Naziv,
- -- p.Naziv,
- -- SUM(s.UkupnaCijena)
- --from Stavka s
- --inner join Proizvod p on s.ProizvodID = p.IDProizvod
- --inner join Potkategorija po on po.IDPotkategorija = p.PotkategorijaID
- --group by grouping sets(p.Naziv, po.Naziv, ())
- --
- 2.--select
- -- d.Naziv,
- -- g.Naziv,
- -- COUNT(k.IDKupac) as Broj,
- -- Rank() over(order by Broj)
- --from Drzava d
- --inner join Grad g on d.IDDrzava = g.DrzavaID
- --inner join Kupac k on k.GradID = g.IDGrad
- --group by grouping sets(d.Naziv,g.Naziv)
- --
- 3.select
- *,
- (CijenaBezPDV / AVG(CijenaBezPDV) over()) * 100
- from Proizvod
- where CijenaBezPDV > 0
- --
- 4.select
- Naziv,
- CijenaBezPDV,
- CijenaBezPDV - LAG(CijenaBezPDV,1) over( order by CijenaBezPDV)
- from Proizvod
- -------------------------------------------------------------------------------------
- go
- XML !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
- go
- alter proc umetni
- (
- @a xml
- )
- as
- declare @drzava nvarchar(200)
- declare @ID int
- select @drzava = tablica.Stupac.value('@Naziv', 'nvarchar(1000)')
- from @a.nodes('/Drzava') as tablica(Stupac)
- print @drzava
- if(@drzava in (select Naziv from Drzava))
- begin
- select @ID = IDDrzava
- from Drzava where Naziv = @drzava
- end
- else
- begin
- insert into Drzava(Naziv) values (@drzava)
- set @ID = SCOPE_IDENTITY()
- end
- print @ID
- insert into Grad
- select tablica.Stupac.value('.', 'nvarchar(1000)') as Naziv,
- @ID as DrzavaId
- from @a.nodes('/Drzava/Grad') as tablica(Stupac)
- go
- exec umetni '
- <Drzava Naziv="Hrv">
- <Grad>Bje</Grad>
- <Grad>Bjel</Grad>
- <Grad>Bjelo</Grad>
- </Drzava>
- '
- select * from Grad
- ------------------------------------------------------------------
- go
- select * from Proizvod
- create type pro6 as table
- (
- Naziv nvarchar(50),
- BrojProizvoda nvarchar(25),
- Boja nvarchar(15),
- MinimalnaKolicinaNaSkladistu smallint,
- CijenaBezPDV money,
- PotkategorijaID int
- )
- go
- create proc p22
- (
- @pro pro6 readonly
- )
- as
- insert into Proizvod
- select * from @pro
- go
- declare @t11 pro6
- insert into @t11(Naziv, BrojProizvoda, Boja, MinimalnaKolicinaNaSkladistu, CijenaBezPDV, PotkategorijaID)
- values ('a1', 'saf', 'plava', 2, 1, 1)
- insert into @t11(Naziv, BrojProizvoda, Boja, MinimalnaKolicinaNaSkladistu, CijenaBezPDV, PotkategorijaID)
- values ('a1', 'saf', 'plava', 2, 1, 1)
- insert into @t11(Naziv, BrojProizvoda, Boja, MinimalnaKolicinaNaSkladistu, CijenaBezPDV, PotkategorijaID)
- values ('a1', 'saf', 'plava', 2, 1, 1)
- exec p22 @t11
- select * from Proizvod
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement