Cette erreur viens d’un souci de classement entre deux champs ce qui rend un simple égale impossible
La solution est assez simple, il suffit d’ajouter COLLATE FRENCH_CI_AS juste après la condition posant souci.
Voir les trois exemple ci-dessous
SELECT * FROM table1 LEFT OUTER JOIN table2
ON table1.champ1 = table2.champ2 COLLATE FRENCH_CI_AS
et
SELECT * FROM table1
WHERE table1.champ1 COLLATE FRENCH_CI_AS in (select…)
et
SELECT *, (SELECT TOP 1 id FROM table2 as t2 WHERE t2.valeur = t1.valeur COLLATE FRENCH_CI_AS ORDER BY id DESC
FROM table1 as t1
Source : https://www.infraworld.fr/2011/01/06/conflit-entre-sql_latin1_general_cp1_ci_as-et-french_ci_as/