小妹现在在做一个页面显示的东西,如果变量等于0,就显示为空白,如果变量不等于0,则显示正常的数字我本来的代码是,replace(isnull(变量,0),0,'')这样的执行结果是,如果变量等于0的话,什么都不显示,但是如果变量等于10,100,1000……的时候,
后面的0也都没有了有什么办法可以解决吗?is……的其他我也试过了,还是没好用完全菜鸟,各位大侠救救急啊!
后面的0也都没有了有什么办法可以解决吗?is……的其他我也试过了,还是没好用完全菜鸟,各位大侠救救急啊!
解决方案 »
- sql2000 怎样写表级触发器?
- 一个有点点难度的SQL查询 急!! 请教!!
- Like fName 'A%' 与 Like fName 'A' + '%'的区别!
- 紧急!请问用sql语句怎么选择除了某一特定列之外的所有列(详见正文)
- java中的数据库查询语句问题
- 求高手帮忙看个sql语句
- 高分求msde2000的下载地址
- 哪儿有T-sql的e-book下?
- 如何看MS SQL2005事务日志
- 有微软专家么?还有“黄山光明顶”兄等高手,帮我看看我的VIEW问题。http://www.csdn.net/expert/topic/1065/1065562.xml?temp=.7300379
- 如何通过客户端在DOS下修改服务器上SQL 2000表的东西
- 在同一个表多次查询问题
insert into tb values(1 , 10)
insert into tb values(2 , 20)
insert into tb values(3 , null)
insert into tb values(4 , null)
insert into tb values(5 , 50)
goselect id , isnull(cast(val as varchar),'') val from tbdrop table tb/*
id val
----------- ------------------------------
1 10
2 20
3
4
5 50(所影响的行数为 5 行)*/
接小妹分if object_id('tb')is not null drop table tb
go
create table tb(id int , val int)
insert into tb values(1 , 10)
insert into tb values(2 , 0)
insert into tb values(3 , 0)
insert into tb values(4 , null)
insert into tb values(5 , 50)
goselect id ,isnull(nullif(rtrim(val),'0'),'') val from tb
/*
id val
----------- ------------
1 10
2
3
4
5 50(5 row(s) affected)*/
select id,val = (case when val=0 or val is null then '' else rtrim(val) end)
from tb
/*
id val
----------- ------------
1 10
2
3
4
5 50(5 row(s) affected)
*/