月度归档:2018年12月

mssql SQL Server 数据表中多行数据组合为一行数据的方法分享

摘要:
下文讲述使用sql脚本将数据表中多行数据组合为一行数据的方法分享,如下所示:
实验环境:sql server 2008 R2


DECLARE @tmpStr NVARCHAR(MAX) 
SET @ tmpStr = ''
SELECT @ tmpStr = @ tmpStr + ‘,’ + [字段名] FROM  [表名]
WHERE  [查询条件]
SELECT @tmpStr
go

mssql sqlserver 获取指定字段的重复情况(重复了几次)的方法分享


摘要:
下文通过举例的方式分享,sqlserver 查询字段重复情况,如下所示:
实验环境:sql server 2008 R2


    select  [字段名] ,count(0) as [字段重复次数]
     from  [表名]
          where   [其它检索条件]   ---检索条件
     group by  [字段名]
     having count([字段名])>1    ---获取字段名存在重复的字段情况

mssql sqlserver 字符串长度不够时 根据字符长度补零


摘要:
下文讲述sql server 中,使用sql脚本对字符串长度不足时,采用0填补的方法分享,如下所示:
实验环境:sql server 2008 R2


实验思路:
下文讲述在sql server中,当sqlserver不足位数时,采用零补齐的方法分享如下所示:

     declare @str varchar(30)
     set @str ='maomao'
    ---返回一个十位的字符串,当位数不够时,此时我们在左边补零
    /*实现思路:
     1.   先定义一个10位的字符串
     2.   将定义的新字符串同原字符串叠加为一个新的字符串
     3.   使用right 函数从右边截取此字符串
    */ 
    declare  @formatExtend varchar(10)
    set @formatExtend  ='0000000000'

     set     @str = @formatExtend +@str  
    ---输出结果 
    select  right(@str,10); --从右边获取10个字符串