You've done well (although I only see 4 replies of yours on this forum and with that I'll say "Welcome Aboard") and my hat is off to you for helping others and, YES, all of those subjects are VERY worthwhile.
Being a bit pedantic, though, none of the subjects that you've listed above are considered to be in the realm of "basics" or "essentials", IMHO. For example, Items 1-3 of the first group listed above all straddle the initial line between beginner and intermediate levels and have follow-ons in the advanced and master levels. Item 4 in that same group is a pretty solid intermediate subject (IMHO and even if you're only talking about what a page and extent is) with some major follow-ons in the advanced and master levels.
The second group is (again, IMHO) decidedly all high intermediate with substantial follow-ons in the advanced and master levels.
And, therein, we find the problem that I have when most speak of "basics" and "essentials". For example, in every language that I know of, except SQL, people first teach the "Hello World" example. That simply means that they've got all of the necessary tools setup to begin to learn how to program. After learning some basic syntax, the next they they learn how to do is count from 1 to 100 in a loop.
Solving repetitive tasks is the main reason for computers and that involves loops. No one ever starts off with that in SQL server and then teaches how a SELECT is really a loop (I call it a "Pseudo-Cursor", a phrase first coined by R. Barry Young on these very forums). AND, you have to remember that most people only understand loops at the very beginning (even if they weren't programmers to start with but especially if they are). If people were to first learn that a SELECT is actually a loop first instead of a lot of techo-jargon like "set-based", "relational division", etc, etc, people would do a hell of a lot better in advanced subjects.
No one (actually, I did... I have two articles in a small series on the subject before I got interrupted) teaches one of the most essential skills of them all in "basic level" classes and that's how to build test data. It goes hand-in-hand with the previous lesson and is, IMHO, the quintessential skill to all else. Like I tell some people, you don't understand data, never mind being able to use it effectively, until you know how to make data in very large volumes. And, if you don't know how to make large amounts of data, then you'll also never learn how to really get the maximum performance out of SQL regardless of supposed "advanced techniques" and "advanced functionality" that a lot of people have studied and still end up with performance and accuracy problems.
I know this to be true because, I too, learned it the wrong way at the start, especially since I took a "professional certification" course on the subject of implementing SQL. 😀
With all that being stated, what do you mean when you say "going back to basics" and "relearning the essentials"? 😀 Again, the subjects you listed are great subjects for articles but they are not "basics" nor "essentials", IMHO.
Shifting gears a bit, I think a great beginner's course would be how to download and use Books Online and another would be how to use Google (or whatever search engine) to begin to find help, especially on "basic" and "essential" topics. Both courses/articles should also explain how to learn from forums such as this and why it's important to "practice".
is pronounced "ree-bar
" and is a "Modenism
" for R
First step towards the paradigm shift of writing Set Based code:
________Stop thinking about what you want to do to a ROW... think, instead, of what you want to do to a COLUMN.
"Change is inevitable... change for the better is not".
"Dear Lord... I'm a DBA so please give me patience because, if you give me strength, I'm going to need bail money too!"
How to post code problems
How to Post Performance Problems
Create a Tally Function (fnTally)