使用SQL Server补齐字符串零:实现方式.(sqlserver补齐0)
对于字符串操作,SQL Server提供了一系列有用的函数,它们可以使数据处理变得更加有效,甚至可以在没有编程语言的情况下,活跃的实现企业的数据需求。如果你想补齐字符串的零,比如将一个数字补齐到十位,可以使用SQL Server的right()函数来轻松实现。
right()函数可以从字符串中取得末尾几个字符:
“`sql
SELECT RIGHT(string_expression, int_expr)
以下例子中,查询得到一个INT字段,并将其补齐到十位(longer_string):
```sqlSELECT RIGHT('0000000' + CAST(num_col AS VARCHAR(10)),10) AS longer_string
FROM table
更多的说明,right()函数的第一个参数是一个字符串表达式,第二个参数用于指定字符串中最后多少个字符。在上例中,通过把int_expr强制转换成字符串的方式――使用cast()函数――,来给右边追加零。
此时,table表中的每行都被追加了7个零字符,并取出最后10个字符作为新的longer_string,如下表:
| num_col | longer_string |
| ——- | ————- |
| 13 | 000000000013 |
| 321 | 000000000321 |
另外,如果num_col字段本身就比10位长,比如99000001,那么末尾10位字符就是本身,不会有其他字符被追加,例如:
| num_col | longer_string |
| ——- | ————- |
| 99000001 | 99000001 |
总之,使用SQL Server的right()函数,可以轻松的补齐字符串和数字零。只要通过把int_expr强制转换成字符串的方式,来给右边追加零,然后取出末尾n位字符作为新的字符串,就可以保证取得的字符串有规定长度。