Consider simple table with one column defined as REAL datatype
CREATE TABLE #t (c REAL)
INSERT INTO #t VALUES (0)
SELECT COUNT(*) FROM #t WHERE c=''
In above statement you expect getting 0 rows to be returns as we filter out for all nonempty rows..But it returns 1 and the answer you find looking at execution plan.
SQL Server will implicitly convert '' to REAL datatype with 0 and a result is 1 row to be return.