mysql中要新建一个存储过程,,if语句的判断条件

要将更新了成绩小于60分的学生的学分改为0,一图的执行结果是二图,学分并没有改变,三图的执行是正确的,为什么必须有select成绩intocj这条语句呢... 要将更新了成绩小于60分的学生的学分改为0,一图的执行结果是二图,学分并没有改变,三图的执行是正确的,为什么必须有 select 成绩 into cj 这条语句呢 展开
 我来答
在封江拔萝卜的冬雪
2017-06-20 · 超过21用户采纳过TA的回答
知道答主
回答量:98
采纳率:66%
帮助的人:25.5万
展开全部
BEGIN
IF EXISTS(select 1 from rw_yzs_Static where pagetype =i_pagetype and catalogCode = i_catalogCode and serviceCode = i_serviceCode and serviceName = i_serviceName) THEN
update rw_yzs_Static set serviceCode=i_serviceCode,serviceName=i_serviceName,zgbb =i_zgbb,sxmc =i_sxmc,cnqx =i_cnqx,sfbz =i_sfbz,dz =i_dz,bldx = i_bldx,bltj =i_bltj,sxcl =i_sxcl,ckbllc =i_ckbllc,wsbllc = i_wsbllc,blsx =i_blsx,blyj = i_blyj,bz =i_bz,updatetime = NOW() 
where pagetype =i_pagetype and catalogCode = i_catalogCode and serviceCode = i_serviceCode and serviceName = i_serviceName;
ELSE 
INSERT INTO rw_yzs_Static (pagetype,divisioncode,divisionname,catalogCode,catalogName,serviceCode,serviceName,orgGroup,zgbb,sxmc,cnqx,sfbz,dz,bldx,bltj,sxcl,ckbllc,wsbllc,blsx,blyj,bz,updatetime)
VALUES(i_pagetype,i_divisioncode,i_divisionname,i_catalogCode,i_catalogName,i_serviceCode,i_serviceName,i_orgGroup,i_zgbb,i_sxmc,i_cnqx,i_sfbz,i_dz,i_bldx,i_bltj,i_sxcl,i_ckbllc,i_wsbllc,i_blsx,i_blyj,i_bz,now());
END IF;
END

例子与回答无关:

这里应该用case when then 这类的吧

这里给个思路,具体用法还是自己去百度吧。应该太多了这种教学。

select case 学分 when <60 then xf=0 from xscj where 学号=xh and 课程名称 =kcmc

你里你应该新增一个变量来记录成绩的值 才能对此进行IF判断

百度网友a19d193
2015-06-25 · TA获得超过3446个赞
知道大有可为答主
回答量:1464
采纳率:100%
帮助的人:1445万
展开全部
意思就是需要一个变量来存储结果才能在后续代码中使用,用js代码举例

"abc";
这个不会报错,但是后面也用不了,必须是
var a = 'abc';
然后你可以使用a

问题中的select语句也是如此,执行后的结果必须指明结果保存到哪里,然后你才能调用到哦。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ninwjf
2017-06-20
知道答主
回答量:5
采纳率:0%
帮助的人:4780
展开全部
  1. 为什么要用存储过程,直接用视图就好了.

  2. INTO 是赋值,没值,你怎么判断?

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式