J'ai la question suivante
SELECT * FROM table
WHERE tester <> 'username';
Je m'attends à ce que cela renvoie tous les résultats où le testeur n'est pas la chaîne username
, mais cela ne fonctionne pas. Je pense que je cherche l'inverse de l' Like
opérateur mais je ne suis pas sûr? Dans mes recherches, j'ai trouvé des solutions pour les nombres (c'est de là que j'ai obtenu <>), mais cela ne semble pas fonctionner avec des chaînes.
NULL
valeurs? (NULL <> 'username'
=>NULL
=> faux)?Réponses:
Votre
where
clause renverra toutes les lignes oùtester
ne correspond pasusername
ET oùtester
n'est pas nul.Si vous souhaitez inclure des valeurs NULL, essayez:
Si vous recherchez des chaînes qui ne contiennent pas le mot «nom d’utilisateur» comme sous-chaîne, elles
like
peuvent être utilisées:la source
Essayez la requête suivante
la source
La condition NULL-safe ressemblerait à:
la source
<=>
opérateur n'existe que dans leMySQL
monde, pour plus d'infos voir ce que c'est <=>la source
La
strcomp
fonction peut être appropriée ici (renvoie 0 lorsque les chaînes sont identiques):la source
Une autre façon d'obtenir les résultats
la source