Zdá se, že předpokládáte nějaké vyhodnocení zkratu nebo zaručené řazení predikátů v WHERE
doložka. To není zaručeno. Když máte v takovém sloupci smíšené datové typy, jediným bezpečným způsobem, jak s nimi naložit, je CASE
výraz.
Použijte (např.)
CONVERT(DATETIME,
CASE WHEN ISDATE(pa.Attribute_Value) = 1 THEN pa.Attribute_Value END)
Ne
CONVERT(DATETIME, pa.Attribute_Value)