Petite surprise en développant une requête qui fait la recherche d'un mot dans trois champs concaténés, elle ne retourne aucun résultat or le mot est bien présent dans l'un des champs. La requête est de la forme:

SELECT *
FROM table
WHERE CONCAT(champ1, champ2, champ3) LIKE '%mot%'

Après un petit tour dans la documentation MySQL, voici ce que l'on trouve:

CONCAT(str1,str2,...) Retourne une chaîne représentant la concaténation des arguments. Retourne NULL si un des arguments est NULL. Cette fonction peut prendre plus de 2 arguments. Si un argument est un nombre, il sera converti en son équivalent sous forme de chaîne de caractères

Pour une concaténation de champs dont certains peuvent avoir la valeur NULL, il faut employer CONCAT_WS():

SELECT *
FROM table
WHERE CONCAT_WS(' ', champ1, champ2, champ3) LIKE '%mot%'