sql >> Databáze >  >> RDS >> Mysql

Jak rozdělit výsledný sloupec do více sloupců

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

Zdroj

Příklad

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

Výsledek

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



  1. Zkontrolujte, zda existuje, pokud ano, aktualizujte o 1++, pokud ne, vložte

  2. SQL Server Rebuild Index Query

  3. Klient s IP adresou nemá povolen přístup k serveru Azure SQL databáze

  4. Vyberte ze stejné tabulky jako vložení nebo aktualizace