数字转字符串
将数字转换成字符串,如果是整数类型的话,可以使用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 所设置的值。这设置一周中的第一天。
字符串拼接