关于mysql函数的问题

cn_zz240 2017-12-01 02:22:12
这是cc函数
BEGIN
declare sReturn int(1) DEFAULT 0;
select state into sReturn from sss where aperiod like left(date_,7);
if(sReturn = 1 or sReturn = 3) then
return 1; # 可以修改,删除与新增
else
return 2; # 不能修改,删除,新增
end if;
# return sReturn;
END

select cc(null) 可以正确的得出一个值为2
select cc(“”)也可以得出一个为2的值

但是select cc(time) from zz where id=2
该id=2的time栏位为空时查询出来的值为空
该id=2的time栏位为不为空时查询出来的值正确

不太明白


...全文
123 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
cn_zz240 2017-12-04
  • 打赏
  • 举报
回复
zz表有一个日期的栏位,我把日期取出来放入这个函数运行select cc(time) from zz where id=2,如果zz.time有值能得到预期的结果,如果没有值就不会有结果, 但是select cc(null)||select cc("")又是有结果的,我只是不明白,zz.time=“”或者.zz.time is null 的时候,用select cc(zz.time)和select cc(null) || select cc("")有什么区别,为什么他们得出的结果不一样
zjcxc 2017-12-01
  • 打赏
  • 举报
回复
提供一下完整的重现脚本 给出的信息看不出有什么问题

56,679

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧