sql >> データベース >  >> RDS >> Sqlserver

SQLで数値列を電話番号としてフォーマットする方法

    これでうまくいくはずです:

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

    ケインの提案を取り入れて、実行時に電話番号のフォーマットを計算できます。考えられるアプローチの 1 つは、この目的のためにスカラー関数を使用することです (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
    


    1. 参照:MySQL拡張機能を使用した完璧なコードサンプルは何ですか?

    2. SQL Server Ro14でデッドロックの理由を見つける方法は?

    3. PostgreSQL:すべての外部キーにインデックスを付ける方法は?

    4. PHP経由でファイルにログインするか、MySQLデータベースにログインします-どちらが速いですか?