如果要存储400米成绩如1'10'2,该用什么样的数据类型呢?开发环境是SQL 2010

解决方案 »

  1.   


    如果考虑到特殊字符,LZ可以使用nvarchar 。
      

  2.   

    建议直接存秒单位时长,在前台展示时转换显示样式
    若要在SQL中按指定样式输出,可在SQL服务器上定义函数,将秒转换为样式定义的字符串drop function dbo.fn_secondstr
    go
    create function dbo.fn_secondstr (@second int)
    returns varchar(16) as 
    begin
        declare @hour int, @minu int, @scnd int, @str varchar(16)
        set @hour = (@second / 3600)
        set @minu = (@second / 60)%60
        set @scnd = (@second %60)
        set @str = cast(@hour as varchar)+'"'+cast(@minu as varchar)+''''+cast(@scnd as varchar)
        return @str
    end
    goselect dbo.fn_secondstr(126)
    -- 0"2'6
      

  3.   

    直接存varchar,不易使用max,min,avg等统计函数