sql-serverwhere-clausexml-column

Using XML column in a where clause in SQL 2008


I have a stored procedure in which I need to have a where clause that reads something like:

where XMLDataPoint <> NULL  

However, XMLDataPoint is an XML column and I get an error

"The XML data type cannot be compared or sorted, except when using the IS NULL operator."

How should I structure my where clause?


Solution

  • NULL requires using IS or IS NOT comparisons:

    WHERE XMLDataPoint IS NOT NULL

    NULL is a state (of having an unknown or undetermined value), not a value itself, so equivalence operators don't apply.