2 votes

pourquoi je ne trouve pas les données lorsque j'utilise =, mais lorsque j'utilise like, elles apparaissent.

J'ai une table A et un nom de colonne nama_dir type de données varchar(50). Je veux trouver ceci 2134882 Je fais donc une requête

select * from table A where nama_dir = '2134882'

je n'ai pas eu de résultat. mais quand je change = a like et ajouter '%2134882%' J'ai obtenu les données, quelqu'un peut-il expliquer pourquoi cela se produit ? Le début et la fin des données ne sont pas espacés. like mais non =

aidez-moi, s'il vous plaît

Describe table

using trim

not using trim

using like

1voto

tourist Points 1406

Il y a peut-être quelques espaces, pouvez-vous essayer trim ?

select * from table A where trim(name_dir) = '2134882'

0voto

Peut-être que MySQL traite votre valeur comme un nombre entier, essayez de supprimer les guillemets.

select * from A where name_dir = 2134882

0voto

Ali Points 1

Vous pouvez écrire le changement de nom du DIr usé name_dir a nama_dir :

select * from table A where nama_dir = '2134882'

si vous utilisez = alors il s'agit de trouver une valeur spécifique dans la table. Cela signifie que dans votre table 2134882 ce DIR n'est pas disponible alors les données ne peuvent pas vous montrer.

Si vous utilisez LIKE alors c'est la valeur trouvée qui est disponible dans l'opérateur 2134882 ces données.

  • L'opérateur LIKE est utilisé dans une clause WHERE pour rechercher un motif spécifique dans une colonne.

  • Il existe deux caractères de remplacement utilisés conjointement avec l'opérateur LIKE :


  • % - Le signe pour cent représente zéro, un ou plusieurs caractères.

  • _ - Le trait de soulignement représente un seul caractère


comme Opérateur : WHERE CustomerName LIKE '%or%'

Description : Trouve toutes les valeurs qui ont "ou" dans n'importe quelle position

0voto

Retirez le "Tableau" du code. Le code correct est :

SELECT * FROM A WHERE name_dir = '2134882'

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X