如何在sql语句中设置字段内容的格式呀?比如:数值为0则不显示,保留小数点位数为几位.
我想在在sql语句中设置显示格式后,以ado记录集传到本地,再放到表格控件(mshflexgrid)中显示,
这样直接绑定数据源就可以了,不用再单独设置表格的显示格式.
关键是如何通过sql语句设置比较方便呀?
1.对于数值,如果为0,则不显示,或为null
2.对于数值,指定显示的小数位数.不足补0.还有一个问题我相问,如果只想显示内容,是不是可以把类型转成字符型呀?
比如数值型的字段,在sql语句中转换成字符型,再通过ado记录集传到本地,放在表格控件中显示.

解决方案 »

  1.   

    1\nullif()函数可以满足你的要求.nullif(data,0)
    2\好象要在字段中设定小数位数的
      

  2.   

    declare @t int
    set @t=0
    select nullif(@t,0)declare @a dec(8,2)
    set @a=1
    select @a
      

  3.   

    第一问:
    case when 字段名=0 then '' end 
    第二问:
    SELECT CAST(1.0 AS DECIMAL(10, 3))
      

  4.   

    转化用cast或者convert
    declare @b dec(8,2)
    set @b=1
    select convert(varchar,@b)declare @c dec(8,2)
    set @c=1
    select cast(@c as varchar)
      

  5.   

    建議用fpSpread控件﹐其功能遠比mshflexgrid的強大
    最好在前台處理﹐以減少SQL服務器的開銷