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

結果の列を複数の列に分割する方法

    SELECT `id`, `ip`,
        SUBSTRING_INDEX( `ip` , '.', 1 ) AS a,
        SUBSTRING_INDEX(SUBSTRING_INDEX( `ip` , '.', 2 ),'.',-1) AS b,
        SUBSTRING_INDEX(SUBSTRING_INDEX( `ip` , '.', -2 ),'.',1) AS c,
        SUBSTRING_INDEX( `ip` , '.', -1 ) AS d
    FROM unicorns
    

    ソース

    SET @ip = '192.168.1.1';
    
    SELECT @ip,
        SUBSTRING_INDEX( @ip , '.', 1 ) AS a,
        SUBSTRING_INDEX(SUBSTRING_INDEX( @ip , '.', 2 ),'.',-1) AS b,
        SUBSTRING_INDEX(SUBSTRING_INDEX( @ip , '.', -2 ),'.',1) AS c,
        SUBSTRING_INDEX( @ip , '.', -1 ) AS d
    

    結果

    |         @IP |   A |   B | C | D |
    -----------------------------------
    | 192.168.1.1 | 192 | 168 | 1 | 1 |



    1. MYSQL-トルコ語の文字

    2. mysqlのjsonエンコード配列に値が存在するかどうかを確認します

    3. パラメータの配列を受け入れるOracleでストアドプロシージャを作成する方法

    4. Oracle:インデックスでは列の順序は重要ですか?