• Hi, reading your article I have stumbled across a few more points:

    Under "Selecting columns to give an index" you say

    Putting a Primary Key on a column has the effect of giving it a clustered index.

    A primary is not necessarily a clustered key by its nature.

    1 line down:

    Putting an index on a table column affects all queries that use that table.

    Not necessarily. It is true though that modifications (DML INSERT, DELETE, UPDATE) will be impacted by the indexes on a table.

    few lines further down:

    A WHERE clause that applies a function to the column value can't use an index on that column

    .

    It can indeed, however, it will do a scan but no seek. Which means it has to go through all index values for that column to see if the result of the function satisfies the (WHERE) constraint. And it is not guaranteed that such index scan will be the fastest approach to execute the query.

    Cheers, Frank