sql >> Base de Datos >  >> RDS >> Mysql

Busque todas las columnas de una tabla usando una sola condición where con una sola palabra clave en mysql

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

Listo.

El '|' separador, por cierto, es para evitar que encuentre coincidencias donde, por ejemplo, la columna 1 termina en 'V' y la columna 2 comienza en 'T', lo que le daría un falso positivo en una búsqueda de "VT".

No estoy seguro si el método anterior es más rápido que OR (Supongo que tienen la misma velocidad), pero definitivamente requiere menos tipeo si escribes la consulta a mano.