Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

Como formatar uma coluna numérica como número de telefone no SQL


Isso deve servir:
UPDATE TheTable
SET PhoneNumber = SUBSTRING(PhoneNumber, 1, 3) + '-' + 
                  SUBSTRING(PhoneNumber, 4, 3) + '-' + 
                  SUBSTRING(PhoneNumber, 7, 4)

Incorporada a sugestão de Kane, você pode calcular a formatação do número de telefone em tempo de execução. Uma abordagem possível seria usar funções escalares para essa finalidade (funciona no SQL Server):
CREATE FUNCTION FormatPhoneNumber(@phoneNumber VARCHAR(10))
RETURNS VARCHAR(12)
BEGIN
    RETURN SUBSTRING(@phoneNumber, 1, 3) + '-' + 
           SUBSTRING(@phoneNumber, 4, 3) + '-' + 
           SUBSTRING(@phoneNumber, 7, 4)
END