代码之家  ›  专栏  ›  技术社区  ›  Colin Desmond

T-SQL中的字符串格式

  •  2
  • Colin Desmond  · 技术社区  · 16 年前

    我已经向表中添加了一列,该列将存储一个格式化的字符串,该字符串基于连接许多其他列,因此我可以更轻松地对其进行搜索。 为了避免将整个表加载到另一个应用程序中并更新新列然后持久化,我想编写一个updatesql查询。但我不知道如何像本例中那样获取整数列并格式化它

    目标列值=0001

    我希望在SQL中添加3个前导零。

    有什么想法吗?

    4 回复  |  直到 16 年前
        1
  •  2
  •   Klaus Byskov Pedersen    16 年前
    select Right( '0000' + cast( 1 as varchar),4)
    
        2
  •  5
  •   Anton Gogolev    16 年前

    下面是如何准备血清:

    right('0000' + cast(MyColumn, nvarchar(4), 4)
    

    这将连接 0000 不管有什么价值 MyColumn 并返回四个最右边的字符。

        3
  •  3
  •   Nick Craver    16 年前

    SELECT RIGHT('000'+ CONVERT(VARCHAR,Source),4) AS ColWithZeros
    FROM Table
    
        4
  •  0
  •   NimChimpsky    16 年前

    如果它来自整数列,我将删除对字符串“0001”的依赖关系。