Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Pesquise todas as colunas de uma tabela usando uma única condição where com uma única palavra-chave no mysql

SELECT * FROM `some_table`
WHERE
CONCAT_WS('|',`column1`,`column2`,`column3`,`column4`,`column64`) # single condition, many columns
LIKE '%VT%'

Voilá.

O '|' separador, a propósito, é para evitar que você encontre correspondências coincidentes onde, por exemplo, coluna1 termina em 'V' e coluna2 começa com 'T', o que daria um falso positivo em uma pesquisa por "VT".

Não tenho certeza se o método acima é mais rápido que o OR method (eu acho que eles têm a mesma velocidade), mas definitivamente envolve menos digitação se você estiver escrevendo a consulta manualmente.