Pergunta

Ao fazer uma consulta SQL e quero puxar entradas de uma mesa que tenha e em nome, mas eu não quero nomes que apenas tenham e nelas ...

Confuso, mas vou mostrar um exemplo

Existem 2 entradas na tabela:

  • Pandomniam
  • Frank e feijão.

Quando faço a consulta, só quero que Frank e Beans apareçam, não Pandomniam. Estou fazendo algo como

SELECT NAME FROM TABLE WHERE NAME LIKE '%and%'

Isso vai me obter resultados, mas eu tenho os unidos.

Meu primeiro instinto é tentar ver se eu consigo obter apenas Pandomniam em um resultado para que eu pudesse fazer um e não gostar de filtrá -los, mas não consigo encontrar um.

Foi útil?

Solução

Que tal adicionar alguns espaços:

SELECT NAME FROM TABLE WHERE NAME LIKE '% and %'

Outras dicas

SELECT NAME FROM TABLE
WHERE
NAME LIKE '% and %' OR 
NAME LIKE 'and %' OR 
NAME LIKE '% and'
SELECT NAME FROM TABLE WHERE NAME LIKE '% and %'

Você não diz qual marca de RDBMS está usando. O MySQL suporta um predicado de expressão regular RLIKE com uma sequência de Metacharacter para "limite de palavras":

SELECT NAME FROM TABLE WHERE NAME RLIKE '[[:<:]]and[[:>:]]'

Se você estiver usando outra marca de banco de dados diferente do MySQL, talvez possa pesquisar seus recursos de expressão regular.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top