Vu que j'ai trouvé la solution hier avec lui et que ça peut arriver; la requête était bonne, seul bémol le nom du champ: keys, qui est un mot réservé par MySQL.
Je ne sais pas si il y a moyen quand on utilise un terme "protégé" de bien lui faire comprendre qu'il s'agit d'un nom de champ et pas d'une fonction.