EDIT: The MSSQL server version is 12.0.4522, the datatypes used are Geometry. I am not sure if it is topologically valid.
I originally had the same issue described and solved here, Spatialite view appears 'filtered' in attribute table, won't load in canvas
The attribute table was originally showing 'Filtered:1' out of nearly 10,000 entries. Now after making a simple SELECT * FROM MyTable query, I now have the attribute table populated with more than one entry however it still showing 'Filtered: 2041'.
It is confusing because all the entries show up on the mapping interface even when just one item was shown as filtered. Does anyone have a solution? Unfortunately, using a different database is not possible and i cannot modify the tables as the database is used by a proprietary system.