Na een lange zoektocht (ook hier) lijkt een simpele vraag uit een database, niet zo makkelijk te gaan. Stel je voor, een database IP met als kolom ook IP. Inhoud:
1.2.3.4
1.2.3.5
1.2.3.60
4.5.6.7
4.5.6.84
5.6.7.9
Leuk, allemaal IP adressen. Ik wil nu weten weten welke /24 er allemaal in de database voorkomen. Dat zijn dus:
1.2.3
4.5.6
5.6.7
En dat wil ik dus ook terugkrijgen.
SELECT DISTINCT `ip` FROM `ip` WHERE `ip` REGEXP '^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.'
Geeft natuurlijk niet het juiste terug: Hij selecteer het juiste, en geeft alles dat in de database voorkomt terug. De selectie is in principe alles, maar het resultaat moet anders zijn. Om alles te selecteren en vervolgens in PHP een regexp erop los laten, lijkt me erg inefficient. Weet iemand hoe ik het gewenste resultaat van MySQL terug kan krijgen? Thx!
1.2.3.4
1.2.3.5
1.2.3.60
4.5.6.7
4.5.6.84
5.6.7.9
Leuk, allemaal IP adressen. Ik wil nu weten weten welke /24 er allemaal in de database voorkomen. Dat zijn dus:
1.2.3
4.5.6
5.6.7
En dat wil ik dus ook terugkrijgen.
SELECT DISTINCT `ip` FROM `ip` WHERE `ip` REGEXP '^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.'
Geeft natuurlijk niet het juiste terug: Hij selecteer het juiste, en geeft alles dat in de database voorkomt terug. De selectie is in principe alles, maar het resultaat moet anders zijn. Om alles te selecteren en vervolgens in PHP een regexp erop los laten, lijkt me erg inefficient. Weet iemand hoe ik het gewenste resultaat van MySQL terug kan krijgen? Thx!
Ondernemer in tech (oud LOQED.com, nu UpToMore.com)