Comment ecrire une adresse ip en sql

Résolu/Fermé
hiba - 12 mars 2018 à 11:44
 hiba - 13 mars 2018 à 10:18
bonjour tout le monde
je cherche comment écrire une adresse ip en sql
en fait j'ai une table t1 qui contient un champ message
je veux afficher tous les messages qui contient une adresse ip dedans
select * from t1 where message is like .......
c'est comment ecrire une adresse ip 4 en sql
merci pour vos propositions.
A voir également:

1 réponse

Reivax962 Messages postés 3671 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 11 février 2021 1 011
12 mars 2018 à 17:59
Bonjour,

Je tenterais une expression rationnelle.
Tu as peux trouver la doc là : https://dev.mysql.com/doc/refman/5.7/en/regexp.html

Une première version naïve serait quelque chose comme ça :
SELECT * FROM t1
WHERE message REGEXP '[[:digit:]]{1,3}[.][[:digit:]]{1,3}[.][[:digit:]]{1,3}[.][[:digit:]]{1,3}'

(Mais quelle syntaxe horrible...)

J'ai dit que c'était naïf parce que ça va accepter n'importe quelle chaîne constituée de 4 nombre de 1 à 3 chiffres séparés par des points. Donc aussi quelque chose comme 564.12.45.268 qui n'est pourtant pas une adresse IP valide.

Xavier
0
Utilisateur anonyme
13 mars 2018 à 01:37
ou simplement
WHERE champ like '%@%'


No ??
0
Reivax962 Messages postés 3671 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 11 février 2021 1 011
13 mars 2018 à 08:31
Euh... Si, peut-être ? Mais je vais avoir besoin d'explications. On cherche une adresse IP, par e-mail, hein ?
Ou alors c'est un wildcard qui signifie « adresse IP » ? Je ne suis pas spécialiste MySQL, mais je n'ai pas vu ça dans la doc.
0
non je cherche comment ecrire une adresse ip en sql c'est à dire 1à3 chiffres.1à3 chiffres.1à3 chiffres.1à3 chiffres
sachant que 1à3 chiffres entre 1 à 255
0
Reivax962 Messages postés 3671 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 11 février 2021 1 011
13 mars 2018 à 09:40
(Oui pour ça, la réponse que je t'ai donnée devrait te satisfaire, non ?)
0
oui parfait ça marche
merci beaucoup
0