You can freely call these a user index. In most case scenarios, non-clustered indexes are created based on search criteria and business requirements. For example, users of your application will search based on LastName
and ProductName
. These attributes are not primary keys (in this universe), but you need to use the power of indexing techniques. From the SQL Server perspective, non-clustered indexes are the right choice.
Non-clustered indexes have almost the same structure as clustered indexes. The only difference is that the data rows in the tables are not sorted based on their non-clustered keys. In the non-clustered index, the data and the index are stored separately.
Non-clustered indexes are designed to improve the performance of frequently used queries that are not covered by a clustered index. If your table already has a clustered index and you need to index another column, you have no choice but to use a non-clustered index. You can achieve maximum query performance...