42804: datatype_mismatch
PostgreSQLQue signifie cette erreur ?
Le type de données attendu et le type de données fourni ne correspondent pas. Par exemple, affectation d'une valeur de type erroné à une colonne, branches CASE renvoyant des types différents, ou branches UNION dont les types ne s'alignent pas.
Cause
Affectation incompatible avec le type de la colonne ; branches CASE/COALESCE produisant des types différents ; colonnes correspondantes d'une UNION de types différents ; valeur renvoyée (RETURN) ne correspondant pas au type de retour de la fonction ; valeur non booléenne là où un booléen est attendu.
Comment la corriger
Convertissez l'expression dans le bon type : value::integer ou CAST(value AS numeric). Faites renvoyer le même type à toutes les branches CASE. Dans une UNION, alignez les types des colonnes correspondantes des deux côtés. Assurez-vous que la condition WHERE produit un booléen.