Per spiegare la conversione di un indirizzo IP ad un numero che alcune risposte hanno fatto affidamento su (e che sono d'accordo con).
L'indirizzo IP deve essere trattato come un numero a 32 bit invece di 4 8 numeri di bit
Per esempio l'indirizzo IP
193.235.18.0
convertito in binario: -
11000001.11101011.00010010.00000000
che si traduce in (cioè, prendere i punti out): -
di lavoro che fuori si ottiene: -
1 * 2147483648 = 2147483648
1 * 1073741824 = 1073741824
0 * 536870912 = 0
0 * 268435456 = 0
0 * 134217728 = 0
0 * 67108864 = 0
0 * 33554432 = 0
1 * 16777216 = 16777216
1 * 8388608 = 8388608
1 * 4194304 = 4194304
1 * 2097152 = 2097152
0 * 1048576 = 0
1 * 524288 = 524288
0 * 262144 = 0
1 * 131072 = 131072
1 * 65536 = 65536
0 * 32768 = 0
0 * 16384 = 0
0 * 8192 = 0
1 * 4096 = 4096
0 * 2048 = 0
0 * 1024 = 0
1 * 512 = 512
0 * 256 = 0
0 * 128 = 0
0 * 64 = 0
0 * 32 = 0
0 * 16 = 0
0 * 8 = 0
0 * 4 = 0
0 * 2 = 0
0 * 1 = 0
Aggiunta di quelli insieme si ottiene 3253408256
È una scorciatoia che un po 'trattando l'indirizzo IP originale come base 256 il numero . In modo da avere 0 unità, 18 delle 256S, 235 di 65536 (vale a dire, 256 * 256) e 193 di (vale a dire, 256 * 256 * 256)
* 1 + * 256 + * 256 * 256 + * 256 * 256 * 256
La funzione INET_ATON citata fa questo per voi.
Non lo farei in SQL. Fallo nella tua preferita linguaggio di programmazione che è il modo migliore. – cb0
hai provato tra? SELEZIONA * DA Prodotti DOVE PREZZO TRA 10 E 20; – Dwza
@ cb0 quindi vai su tutte le righe mysql nel programma? –