Professional Documents
Culture Documents
SUM Datediff DAY: 'Giant'
SUM Datediff DAY: 'Giant'
2)
create procedure Task2 @id_rent int
as
UPDATE [Rent date]
SET [To] = CONVERT(date, getdate())
WHERE @id_rent = [Rent date].IdRent
go
exec Task2 32
3)
create procedure Task3 @type varchar(40), @year int, @month int, @name varchar(25)
output, @type_velika varchar(25) output, @kolichstvo_raz int output
as
Select @name = B.Name, @type_velika = T.Type, @kolichstvo_raz = COUNT(Name)
From Bicycle as B, [Rent date] as R, TypesOfBicycle as T
where B.IdType = T.IdType and B.IdBicycle = R.BicycleId and YEAR([To]) = @year and
MONTH([To]) = @month and T.Type like @type
group by B.Name, T.Type
go
declare @name varchar(25), @type_velika varchar(25), @kolichstvo_raz int
execute Task3 'Город%', 2016, 10, @name output, @type_velika output, @kolichstvo_raz
output
select 'Велосипед:', @name, 'Тип:', @type_velika, 'Количество раз:', @kolichstvo_raz
4)
create procedure Task4 @name nchar(20) output
as
declare @pinter int = (select max(IdRent) from [Rent date])
Select @name = B.Name
From Bicycle as B, [Rent date] as R
where B.IdBicycle = R.BicycleId and R.IdRent = @pinter
go
declare @name nchar(20)
execute Task4 @name output
select 'Name is ', @name
Пратическое задание
create VIEW myview (NameOfBicycle, NameOfClient, Summa)
as
select B.Name, C.Name +' ' + C.Surname as 'Client', ([Цена за день (В грн.)] * (1 +
DATEDIFF(DAY, [From], [To]))) as Summa
from [Rent date] as R, [Пункт велопроката] as P, Bicycle as B, Clients as C
where B.IdBicycle = R.BicycleId and C.IdClient = R.ClientId and (1 + DATEDIFF(DAY,
[From], [To]))BETWEEN [Дней с] AND [Дней по] and YEAR([From]) = 2018
group by B.Name, C.Name, C.Surname, R.[To], R.[From], P.[Цена за день (В грн.)]