注册 登录
编程论坛 SQL Server论坛

SQL 2005

zhouweichu 发布于 2012-07-06 11:10, 466 次点击
    日期    1    2    3    4    5    6    7
人员                                
A           50   50   50   0    0    0    0
B           0    0    0    50    50    50    50
C           0    50    0    0    50    0    0
例如这个表 我想把A人员 日期在1-7日内连续为0的值不显示!我在SQL 怎么写代码啊?


例如 C人员 如果我选择2-4日期 这样就会显出全部的值   如果我只选3-4日期 就不出现值!谁能指教一下!
2 回复
#2
netlin2012-07-07 10:24
在select后面的字段名列表中,用这个函数代替:
    case

例如:
在下面语句中
select 字段名1,字段名2,字段名3,...... from ......
假设其中的 字段名2 是你要显示 0,50等值的字段,就可以这样改写:
select 字段名1,case when 字段名2=0 then '' else cast(字段名2 as varchar(10)) end as 字段名2,字段名3,...... from ......

希望能对你有所帮助!


#3
cnfarer2012-07-07 16:37
select * from tablename where [1]+[2]+[3]+[4]+[5]+[6]+[7]<>0


select * from tablename where [2]+[3]+[4]<>0
1