• My .02:

    I prefer option B

    1. It's readable. The aliases don't get into the way of the column, which is what I'm really interested in in the Select.

    2. I know where the columns are coming from. I just scan down to the from clause.

    3. Aliasing to a fully qualified schema speeds up compiling.

    If you're worried about clarity, why not do (something like) this?

    Select

    a.FirstName, --from Authors a

    a.LastName,

    a.AuthorID,

    t.Title, --from Titles t

    t.TitleID

    From dbo.Authors a

    inner join dbo.Titles t

    on a.AuthorID = t.AuthorID