Page 1 sur 1

requete sql: afficher enregistements qui ne possedent pas le

Posté : 15 févr. 2008, 16:40
par pod1978
bonjour,

j'ai une table avec 3 champs id, login, pwd

je voudrai savoir comment faire une requete qui me retourne les enregistements qui n'ont pas le caractere '@' dans le champ login afin de pouvoir les supprimer

j'espere avoir été clair

merci de vos réponses

pod

Posté : 15 févr. 2008, 17:10
par d0m
je dirais avec un like :

Code : Tout sélectionner

SELECT champ FROM table WHERE champ NOT LIKE %@%
de ce genre là

Posté : 15 févr. 2008, 17:14
par zeus
Attention : Ce genre de condition (like '%..%') est désastreux pour les performances d'une base de données.

A ne pas utiliser autrement que très ponctuellement, et en gardant à l'esprit que le temps d'exécution peut être très long. ;)

Posté : 15 févr. 2008, 17:16
par d0m
D'après ses explications, il semble que c'est de temps en temps pour faire le ménage don ça pourrait suffire.

Posté : 15 févr. 2008, 17:56
par Sékiltoyai
Euh, tu gagnerais à vérifier cela dans ton script php. C'est totalement illogique de le faire après l'insertion…

Posté : 15 févr. 2008, 18:13
par zeus
D'après ses explications, il semble que c'est de temps en temps pour faire le ménage don ça pourrait suffire.
Certes, mais comme le but de se forum n'est pas uniquement de fournir une solution à un problème spécifique, mais également de donner des informations qui pourrait servir dans d'autres cas, j'ai trouvé que le préciser n'était pas inutile ;)

Sinon, Sekiltoyai soulève un point intéressant : pourquoi ne pas refuser l'insertion de données "fausses" plutôt que d'essayer des les nettoyer plus tard ?