将99999999
转换为99999-999
。
我不知道语法。
我正在考虑使用FORMAT()
函数 - 但我正在使用 INT 而不是 DECIMAL 。
Select city.ZipCode As zipCode
From app_cities As city
Where city.Id = 1
所以,就是这样。有人对我有任何想法吗?
答案 0 :(得分:4)
使用INSERT()
select insert(ZipCode , 6, 0, '-') As zipCode
from app_cities As city
where Id = 1
答案 1 :(得分:2)
邮政编码的问题在于可能有前导0.因此邮政编码的长度可以是7位或8位。
因此,邮政编码可能是02323-213或12133-333。作为一个int,你将丢失第一个数字。
采取Jurgen D已发布并修改它的内容。
SELECT insert(LPAD(zipcode, 8, '0'), 6, 0, '-') from zipcodes;
答案 2 :(得分:0)
select concat(substring(cast(999999999 as char),5),'-',
(substring(cast(999999999 as char),6,4)));
来自表格:
select concat(substring(cast(ZipCode as char),5),'-',
(substring(cast(ZipCode as char),6,4)));