sql 视图中需要 用代码添加一列
sql视图中需要用代码添加一列:条件是比较除去0以外字段的大小,求最小值。如何做?我用的是casewhen。好像不行,如何判断不是0的最小值呢?切记:是视图中用代码写的、...
sql 视图中需要 用代码添加一列:条件是比较除去0以外字段的大小,求最小值。如何做?
我用的是case when。好像不行,如何判断不是0的最小值呢?
切记:是视图中用代码写的、、求大哥大姐们帮帮忙吧!!!
不可能全有的列都为0,不会关心这个问题 展开
我用的是case when。好像不行,如何判断不是0的最小值呢?
切记:是视图中用代码写的、、求大哥大姐们帮帮忙吧!!!
不可能全有的列都为0,不会关心这个问题 展开
2个回答
展开全部
select min(要操作的字段[必须是数字类型的字段列]) from 表名 where 要操作的字段 <> 0
追问
是这样的。不是对一个字段求最小值。。是对四个字段求最小值。在视图中显示的是 对一行4个数求非0最小值。。而min()只能有一个参数,是不可以的。。请问:前辈,还有别的方法吗
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
好吧,
least(decode(列1,0,9999999),decode(列2,0,9999999),decode(列3,0,9999999),……decode(列n,0,9999999))
这样就行了。
least(decode(列1,0,9999999),decode(列2,0,9999999),decode(列3,0,9999999),……decode(列n,0,9999999))
这样就行了。
追问
好人做到底吧,,decode 函数好像只在oracel中有,在sql server中没有,应该用哪个函数代替呢?谢谢!!!
追答
sqlserver 我不是太熟。if then 啥的没有么?case 应该可以。
case 列1 when 0 then 99999 else 列1 end
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询