日期:2014-05-16  浏览次数:20813 次

在mysql中有case when else end 像这样的用法吗??(在线等)
现在有个问题就是
有权限表和角色权限的中间表
标明有权限和权限多少的角色在中间表有数据,
现在是要显示所有的权限,也就是权限表的所有数据
但是该角色的权限显示出来是被选中的(也就是多选框中打勾)
以前见人在oracle中用case   when   else   end   的用法可以达到上面的功能。
现在在mysql中有这样的   用法吗??
如果没有,可以用什么样的方式产生上面的效果。

------解决方案--------------------
CASE value WHEN [compare-value] THEN result [WHEN [compare-value] THEN result ...] [ELSE result] END CASE WHEN [condition] THEN result [WHEN [condition] THEN result ...] [ELSE result] END

在第一个方案的返回结果中, value=compare-value。而第二个方案的返回结果是第一种情况的真实结果。如果没有匹配的结果值,则返回结果为ELSE后的结果,如果没有ELSE 部分,则返回值为 NULL。