2010-11-04 20 views
0

J'ai deux tables dans la même base de données.La fonction MySQL Like ne fonctionne que sur certaines tables

Sur un, je peux utiliser la fonction MySQL LIKE pour trouver un nom de société. D'autre part, je reçois toujours des résultats zéro, même lorsque j'utilise un simple match comme:

SELECT name 
    FROM table 
WHERE name LIKE 'a%' 

Y at-il une raison pour cela? Y a-t-il un paramètre ou quelque chose qui doit être changé?

+0

Les tables sont-elles toutes les deux InnoDB? – dotariel

+0

@ XSaint32 - MyIsam, le classement est le même – user387049

Répondre

1

Vous pouvez essayer de voir si vous obtenez quoi que ce soit en utilisant simplement

SELECT name FROM table WHERE name LIKE '%' 

Peut-être que rien ne commence par un?

+0

Juste en utilisant '%' travaillé et me conduire à la réponse. Il y a un espace devant les noms, ce qui est un autre problème, et j'ai donc besoin d'un% devant tout. Merci! – user387049

1

Veuillez fournir un exemple de la population de tables et de la sortie MySQL. Peut-être n'avez-vous vraiment aucun nom commençant par 'a'.

+0

D'accord. Peut-être que le classement est sensible à la casse, donc il n'y a rien avec 'a' parce qu'ils commencent tous par 'A'. Il suffit de se demander - si je ne reçois aucune donnée, y en a-t-il qui correspondent à mes critères pour commencer? –

+0

Non, je suis dans PHPMyAdmin en regardant les tables, et j'ai certainement des noms qui commencent par 'a', aussi j'ai essayé 'A' et 'a' et aucun travail. – user387049