标签归档:日期

mssql sqlserver 使用sql脚本获取日期字段中的月份、年份的方法分享


摘要:
下文讲述使用sql脚本获取变量中的年份,月份的方法,如下所示
实验环境:sql server 2008 R2


       declare @maomao365 date time
       set @maomao365 ='2019-6-2'
        
        ---获取变量的年份
       select year(@maomao365)
       ----输出----
        2019 
   
      ---获取变量的月份
       select month(@maomao365)
       ----输出----
        6
   
       
      ---获取当前系统的年份和月份
       select year(getdate()),month(getdate())
       ----输出----
        2019   ,6 

mssql sqlserver datetime存储类型选择(int,decimal ,varchar ,date)


摘要:
下文讲述sqlserver中datetime的存储类型选择,如下所示:
实验环境:sqlserver 2008 R2



一、int 、decimal 存储datetime类型

int 和decimal存储方式,首先需将datetime转换为int 或decimal类型放入数据库进行存储。
int类型存储最大精度为:日期
decimal类型存储最大精度:毫秒



二、varchar 存储datetime类型

varchar类型存储datetime,非常方便,只需将数据按照字符串的形式放入数据库中既可。
varchar存储数据占用空间非常大,例:存储年月日需要10个字节,而使用date类型只占用存储空间4个字节
varchar存储的日期数据,在查询检索时,需进行二次转换才可使用
varchar存储日期类型的最大优点,可以随意存储任意格式的日期样式



三、date 存储datetime类型

date类型是数据库中原生态数据类型,存储datetime数据最为方便和便捷,系统拥有多个原生态的函数支持对datetime类型的操作


综上所述:
当datetime存储后涉及相关计算时,我们可以采用date、int、decimal类型进行存储
如果datetime存储后不需进行相关运算,我们可以采用varchar类型进行存储