2015-09-22 1 views
0

Je veux trouver tous les mots sur le dernier caractère de la demande avec la condition.PAS DANS après LIKE ne fonctionne pas

Ma requête est:

SELECT `name` FROM `cities` WHERE 
(SELECT `name` FROM `cities` WHERE LIKE '%а') 
AND 
WHERE `name` NOT IN (SELECT `game_code` FROM `games` WHERE game_code LIKE 'qaZxsw2wewewqRRE') 

Mais cela fonctionne toujours pas.

+4

'ET PAS IN' .... et * quoi * pas dans? – Lamak

+0

On dirait que la syntaxe de la requête est incorrecte. – rajuGT

+1

Vous manquez des paramètres dans la clause where –

Répondre

2

Essayez ceci:

SELECT `name` FROM `cities` WHERE 
`name` LIKE '%а' 
AND 
`name` NOT IN ('qaZxsw2wewewqRRE') 

Vous n'avez pas besoin:

(SELECT `game_code` FROM `games` WHERE game_code LIKE 'qaZxsw2wewewqRRE') 

car il ne retournera une valeur DISTINCT qui est 'qaZxsw2wewewqRRE' et cela ne changerait rien quoi que ce soit parce qu'il ne se termine pas dans ne se termine pas en a ('%a')

Alors vraiment vous avez juste besoin:

SELECT `name` FROM `cities` WHERE 
`name` LIKE '%а'