永发信息网

sql语句case的用法

答案:1  悬赏:80  手机版
解决时间 2021-07-29 03:52

create function [dbo].[dhp](@stcd varchar(10),@d1 varchar(100) )-- stcd 表示站点编号 d1表示时间
returns decimal
as
begin
declare @dhp decimal
if (datename(hour,@d1)>'8')
select @dhp= sum(drp) from st_pptn_r where stcd=@stcd and tm between @d1
and convert(varchar(100),year(dateadd(day,1,@d1)))
+'-'+convert(varchar(100),month(dateadd(day,1,@d1)))
+'-'+convert(varchar(100),day(dateadd(day,1,@d1)))
+' 8:00:00'
else
select @dhp= sum(drp) from st_pptn_r where stcd=@stcd
and tm between convert(varchar(100),year(dateadd(day,-1,@d1)))
+'-'+convert(varchar(100),month(dateadd(day,-1,@d1)))
+'-'+convert(varchar(100),day(dateadd(day,-1,@d1)))
+' 9:00:00' and @d1
return @dhp
end

怎么把函数转化为sql语句!急需指点!

最佳答案

select case when stcd='stcd' and tm between 'd1' and convert(varchar(100),year(dateadd(day,1,'d1')))
+'-'+convert(varchar(100),month(dateadd(day,1,'d1')))
+'-'+convert(varchar(100),day(dateadd(day,1,'d1')))
+' 8:00:00' then sum(drp) when stcd='stcd' and tm between convert(varchar(100),year(dateadd(day,-1,'d1')))
+'-'+convert(varchar(100),month(dateadd(day,-1,'d1')))
+'-'+convert(varchar(100),day(dateadd(day,-1,'d1')))
+' 9:00:00' and 'd1' then sum(drp) end drpsum from st_pptn_r


你把'stcd'和'd1'换成具体值,试试看。

我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
驿城区驻马店农村商业银行(交通支行)地址是什
Cs控制台命令问题
孩子发烧三天还没退烧?
中行的贷款迟交
我是阴历1987年3月14的生日想占卜爱情事业和
有关QQ 拼音的问题
为什么在家里面谈话?
QQ炫舞什么戒指好看
魔兽世界一个刚刚70级的亡灵FS首先需要做什么
新买的诺基亚5530怎么下不了QQ2009版的.现在
掇刀区荆门天宏种业地址有谁知道?有点事想过
关于(安全)主题的句子和成语或者熟语.
我想在5173上买点游戏YB,用银行卡充了5173币
急!!DNF红眼PK怎么加点
太阳镜如何清洗,洗眼镜用什么洗比较好
推荐资讯
茅箭区十堰香格里拉珠宝城地址有谁知道?有点
大学活动策划书范文有关残疾人保障
乌龟为什么要张壳?
估计一个2011年 东北大学的最低分数线
有谁知道这首歌的MP3地址??急 急 急
消除豆豆?
从爱人到好朋友……我们只走了一个礼拜,从好
什么叫 明星气质 ?
电脑有什么软件能设置定时关机的啊??
怎样提高语言表达能力?
《我和僵尸有个约会》这部电视剧里面的男主角
赛尔号最好练什么?
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?