• Still learning SQL -- consider myself a newbie still after 2 yrs becuase I am still learning new things every day -- but I found ; for me and my learning style -

    so here are my late-night rambling son the topic....

    Understand how the front end app for the given Db works (for me, it is a tracking system).

    Study each and every table (ERD be damned). Look at the indexes and triggers for those tables, so you know how the tables 'interact' with each other.

    Learn how to do distinct selects.

    Learn how to do table samplings (just learned this the other day! pretty cool;) )

    Learn how to trap your mistakes, and roll them back.

    Learn JOINS. Learn how to write your own views. Learn how to recursively modify data in a given table to fix the inevitable data errors your wonderful programmers will create. (No discussion of cursors.... Choose your own poison).

    Learn how to use the tools (execution plans, optimizer, etc). I don;t think they do much good until you understand the underlying nature of the beast.... And our tracking db is a beast....