Sql Server中使用存储过程来实现一些时间差的改变

Sql Server中的时间差是使用DATEDIFF来是现的

语法如下:DATEDIFF(要显示时间格式,开始时间,结束时间)

比如:DATEDIFF(minute,'2019-2-28 8:30','2019-2-28 10:30')其中这个实现的是两个时间段中的分钟时间差

datepart缩写
年  yy, yyyy
季度qq, q
mm, m
年中的日dy, y
dd, d
wk, ww
星期dw, w
小时hh
分钟mi, n
ss, s
毫秒ms
微妙mcs
纳秒ns

设计一个小项目,要求收汽车在路边的停车的费用每半小时收费3元则做法如下

create table Car
(
    Id varchar(20),--编号
    begintimes datetime,--开始时间
    endtimes datetime,--结束时间
    Moneys VARCHAR(20)--一个要计算金钱的字段
)

编写一段存储过程

 
  
--这段代码的作用是将数据库中一千存在的和你现在要

if
(exists (select * from sys.objects where name = 'cartimes')) drop proc searchBooks1 go create procedure cartimes ( @begintimes datetime,--变量开始时间这个名字是自己可以起的 @endtimes datetime,--变量结束时间 @Id varchar(20)--要求要是被的字段自我感觉这个是个定位的作用 ) as select DATEDIFF(minute,@begintimes,@endtimes) /30 from car where Id=@Id go

--显示

exec cartimes '2019-2-28 8:30','2019-2-28 10:30',1
go

 

如何删除存储过程

语法是:drop procedure 存储过程名

drop procedure cartimes;
go

修改存储过程的名字

语法是 视频、sp-rename 现在的存储过程的名字,要修改的存储过程名字

sp_rename cartimes,cartimesss;
go

修改存储过程内容的语法是

alter procedure cartimes
as 
select * from car
go

本文只是我个人在以前的学习的现在有碰到了所以发次博客希望可以帮到需要的人欢迎大家前来讨论互相学习。

转载于:https://www.cnblogs.com/zsznh/p/10620878.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值