Filtered indexes allow indexes to be created on a subset of data in a table by specifying a WHERE clause. They are useful for indexing sparse columns, columns with certain value ranges, or partitions of table data. While filtered indexes can reduce storage and maintenance costs, they are less powerful than indexed views which support more complex filtering and joins across multiple tables. Unique indexes that allow NULL values can be achieved using filtered indexes.