作业帮 > 英语 > 作业

convert命令祥解 convert(varchar,monthindex) 以及convert()三变量的用法?

来源:学生作业帮 编辑:神马作文网作业帮 分类:英语作业 时间:2024/11/17 22:13:21
convert命令祥解 convert(varchar,monthindex) 以及convert()三变量的用法?
请高手们指教一二!
convert命令祥解 convert(varchar,monthindex) 以及convert()三变量的用法?
convert是将一种数据类型的表达式显式转换为另一种数据类型的表达式
语法:
CONVERT ( data_type [ ( length ) ] ,expression [ ,style ] )

CONVERT(数据类型[(长度,该项可选)],表达式[,格式样式(该项可选)])
再问: declare @monthMaxDays int select @monthMaxDays=datepart(day, dateadd(day,-1,(dateadd(month,1,convert(datetime, @year+'-'+@month+'-'+'1'))))) 帮我讲解下这个例子 这个是算一个月的最大天数的!
再答: 1.convert(datetime, @year+'-'+@month+'-'+'1') 是给传进来的年月变量先格式化成 XXXX-XX-1的形式 2.dateadd(month,1,convert(datetime, @year+'-'+@month+'-'+'1'))则是对上面1中的日期进行按月份加1个月的操作. 3.dateadd(day,-1,(dateadd(month,1,convert(datetime, @year+'-'+@month+'-'+'1'))))则是对2中的时间进行了减一天操作,其实就是取得了该月的最后一天 4.最后datepart(day,.....)则是返回该月的指定日期部分的整数 其中 : DATEPART ( datepart , date ) 返回表示指定日期的指定日期部分的整数。 datepart 指定要返回的日期部分的参数。 date 返回 datetime 值(或可隐式转换为 datetime 值的值)的表达式。date 参数也可以是日期格式的字符串。datetime 数据类型仅用于 1753 年 1 月 1 日之后的日期。 对于之前的日期,将存储为字符数据。在输入 datetime 值时,请始终使用单引号将它们括起来。 DATEADD (datepart ,number,date ) 通过向指定日期添加间隔,返回新的 datetime 值。 datepart 指定要作为新值返回的日期部分的参数。 number 用于增加 datepart 的值。这是精确数字或近似数字数据类型类别的表达式,或者是可以隐式转换为 float 类型的表达式。如果指定的值不是整数,将丢弃该值的小数部分。例如,如果为 datepart 指定 day,并为 number 指定 1.75,则 date 将加 1。 date 返回可以隐式转换为 datetime 的值的表达式,或者是日期格式的 Unicode 字符串。