Ce face INET_NTOA()
INET_NTOA() primește numărul obținut cu INET_ATON() și returnează adresa ca text, de exemplu 10.0.5.9. Se folosește la afișarea adreselor salvate ca numere.
Pentru un număr în afara intervalului 0 – 4294967295 returnează NULL, cu avertisment.
Parametri
| Parametru | Descriere |
|---|---|
numar |
Adresa IPv4 ca număr. |
Ce returnează
Adresa ca text sau NULL.
Exemple
Exemplul 1: Numere transformate în adrese
SELECT INET_NTOA(167773449) AS adresa,
INET_NTOA(0) AS minim,
INET_NTOA(4294967295) AS maxim,
INET_NTOA(4294967296) AS prea_mare;
Rezultat
+----------+---------+-----------------+-----------+
| adresa | minim | maxim | prea_mare |
+----------+---------+-----------------+-----------+
| 10.0.5.9 | 0.0.0.0 | 255.255.255.255 | NULL |
+----------+---------+-----------------+-----------+
Warning (Code 1411): Incorrect integer value: '4294967296' for function inet_ntoa
Exemplul 2: Primele adrese după numărul de vizite
CREATE TABLE vizite (ip INT UNSIGNED);
INSERT INTO vizite VALUES
(INET_ATON('86.120.4.18')), (INET_ATON('86.120.4.18')), (INET_ATON('5.12.33.140')),
(INET_ATON('86.120.4.18')), (INET_ATON('5.12.33.140')), (INET_ATON('188.24.1.9'));
SELECT INET_NTOA(ip) AS adresa, COUNT(*) AS vizite
FROM vizite
GROUP BY ip
ORDER BY vizite DESC;
Rezultat
+-------------+--------+
| adresa | vizite |
+-------------+--------+
| 86.120.4.18 | 3 |
| 5.12.33.140 | 2 |
| 188.24.1.9 | 1 |
+-------------+--------+
Greșeli frecvente
- Sortezi adresele după textul dat de
INET_NTOA(). Ordinea textelor pune10.0.0.9după10.0.0.10; sortează după coloana numerică.
Comenzi înrudite
INET_ATON(): Transformă o adresă IPv4 (de exemplu 10.0.5.9) într-un număr întreg, ușor de comparat și indexat.GROUP BY: Grupează rândurile cu aceeași valoare, ca să calculezi totaluri pentru fiecare grup.