Mysql
 sql >> база данни >  >> RDS >> Mysql

Mysql Regex за замяна на 0 от ipv4

Чрез използване на функциите на MySQL INET_ATON() и INET_NTOA() можете надеждно да конвертирате входящ IPv4 адрес, който има водещи нули в същия низ без водещи нули. Обвийте INET_ATON() с INET_NTOA() за да преобразувате IP адреса първо в неговата целочислена стойност, а след това обратно в четворка с точки.

IP с водещи нули на различни места:

mysql> SELECT INET_NTOA(INET_ATON('001.110.011.111'));
+-----------------------------------------+
| INET_NTOA(INET_ATON('001.110.011.111')) |
+-----------------------------------------+
| 1.110.11.111                            |
+-----------------------------------------+

И без водещи нули за сравнение:

mysql> SELECT INET_NTOA(INET_ATON('1.110.11.111'));
+--------------------------------------+
| INET_NTOA(INET_ATON('1.110.11.111')) |
+--------------------------------------+
| 1.110.11.111                         |
+--------------------------------------+

Забележка: Това ще върне NULL ако входният IP адрес не е бил валиден адрес. Той няма да върне оригиналния низ или извеждане на нули от лош IP адрес:

Погрешен IP адрес с водещи нули:

mysql> SELECT INET_NTOA(INET_ATON('888.777.123.123'));
+-----------------------------------------+
| INET_NTOA(INET_ATON('888.007.123.123')) |
+-----------------------------------------+
| NULL                                    |
+-----------------------------------------+



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. python models.py syncdb не работи

  2. Защо един индекс може да направи заявката наистина бавна?

  3. MySQL получава датата преди n дни като времева марка

  4. как автоматично да вмъквам препратки към външни ключове в таблици в mysql или JDBC?

  5. Какво е значението на въпросителния знак в MySQL в колона WHERE =??