数字转字符串
将数字转换成字符串,如果是整数类型的话,可以使用str()函数直接来转换,不过用str函数不能转带有浮点数。
declare @score float;
set @score=1.6;
select str(@score);
输出结果是2。这明显是不对的。
所以更建议不要使用str函数,而使用convert和cast函数
这两个函数的语法
convert(目标类型,要转换的数字);
cast(要转换的数字 as 目标类型);
如:
declare @score float;
set @score=1.6;
select convert(varchar(5),@score);
declare @score float;
set @score=1.6;
select cast(@score as varchar(5));
时间函数
函数 | 确定性 |
DATEADD | 具有确定性 返回给指定日期加上一个时间间隔后的新 datetime 值。 DATEADD (datepart , number, date ) 参数 datepart:指定要返回新值的日期的组成部分。下表列出了 Microsoft SQL Server 2005 可识别的日期部分及其缩写。 number:用于与 datepart 相加的值。如果指定了非整数值,则将舍弃该值的小数部分。例如,如果为 datepart 指定 day,为 number 指定 1.75,则 date 将增加 1。 date:表达式,用于返回 datetime 或 smalldatetime 值,或日期格式的字符串。 返回类型 返回 datetime。但是,如果 date 参数为 smalldatetime,则返回 smalldatetime。 |
DATEDIFF | 具有确定性 返回跨两个指定日期的日期边界数和时间边界数。 DATEDIFF ( datepart , startdate , enddate ) 返回类型 :integer |
DATENAME | 不具有确定性 返回表示指定日期的指定日期部分的整数。 DATENAME ( datepart ,date ) 返回类型 :int |
DATEPART | 除了用作 DATEPART (dw, date) 或 DATEPART (wk,ww, date) 外都具有确定性。dw 是 weekday 日期部分,取决于设置每周的第一天的 SET DATEFIRST 所设置的值。week (wk, ww) 日期部分反映了对 SET DATEFIRST 所做的更改。任意一年的 1 月 1 日均定义 week 日期部分的开头数字,例如:DATEPART(wk, 'Jan 1, xxxx') = 1,其中 xxxx 为任意一年。 返回表示指定日期的指定日期部分的整数。 DATEPART ( datepart , date ) 返回类型 :int |
DAY | 具有确定性 返回一个整数,表示指定日期的天 datepart 部分。 DAY ( date ) 参数 date:datetime 或 smalldatetime 类型的表达式。 返回类型 :int |
GETDATE | 不具有确定性 以 datetime 值的 SQL Server 2005 标准内部格式返回当前系统日期和时间。 GETDATE ( ) 返回类型:datetime |
GETUTCDATE | 不具有确定性 返回表示当前 UTC 时间(通用协调时间或格林尼治标准时间)的 datetime 值。当前的 UTC 时间得自当前的本地时间和运行 Microsoft SQL Server 实例的计算机操作系统中的时区设置。 GETUTCDATE() 返回类型:datetime |
MONTH | 具有确定性 返回表示指定日期的“月”部分的整数。 MONTH ( date ) 参数 date :表达式,用于返回 datetime 或 smalldatetime 值,或日期格式的字符串。仅对 1753 年 1 月 1 日后的日期使用 datetime 数据类型 返回类型 :int |
YEAR | 具有确定性 返回表示指定日期的年份的整数。 YEAR ( date ) 参数 date :datetime 或 smalldatetime 类型的表达式 返回类型 :int |
日期部分 | 缩写 |
year | yy, yyyy |
quarter | qq, q |
month | mm, m |
dayofyear | dy, y |
day | dd, d |
week | wk, ww |
weekday | dw |
hour | hh |
minute | mi, n |
second | ss, s |
millisecond | ms |
week (wk, ww) 日期部分反映对 SET DATEFIRST 所做的更改。任意一年的 1 月 1 日均定义 week 日期部分的开头数字,例如:DATEPART(wk, 'Jan1, xxxx') = 1,其中,xxxx 是任意一年。
weekday (dw) 日期部分返回与一周的某一天对应的数字,例如:Sunday = 1,Saturday = 7。weekday 日期部分生成的数字取决于 SET DATEFIRST 所设置的值。这设置一周中的第一天。
字符串拼接