March 19, 2022 at 3:12 pm
I work in the healthcare industry in clinical performance. we rely a LOT of clinical data to form decisions. We have only 2 DBA's that carry way too much work load. In an effort to lighten their demand, I want to become proficient in SQL queries (possibly certified at an entry level https://nox.tips/).
Want to be strictly online but want some quality curriculum. We use SQL Server and Microstrategy so want to concentrate my efforts there.
Any feedback, suggestions on what sites to visit. I'm interested in Udemy and Coursera.
March 19, 2022 at 5:40 pm
With the understanding that there are many dialects of "SQL" and that (especially) functions and the UPDATE statement vary widely in MySQL, SQL Server, MS Access, Oracle, Sybase, Informix, Postgres, and other database system, you could start at the following...
https://www.w3schools.com/sql/default.asp
If you want something very specific to SQL Server (and you'll eventually need that), there are some decent topics in the "Stairways" on this very site.
https://www.sqlservercentral.com/stairways
In all cases, I recommend you download and install the Developers Edition of SQL Server so that you can experiment with fearing blowing something up in the production boxes at work.
https://www.microsoft.com/en-us/sql-server/sql-server-downloads?SilentAuth=1&wa=wsignin1.0
You'll also need to download a copy of SSMS (SQL Server Management Studio), which they turned into a separate product years ago.
And, yeah... it's all free.
You can also look for online books for certification in SQL Server. Those aren't usually free though.
And then, there's YouTube. Lot's of 'tubes on different subjects there.
With the old and true idea that "Half of all that is written is wrong and the other half is written in such a fashion that you can't actually tell", I'll also advise you to use a skeptical eye. For example, you'll find a whole lot of information on the supposed "Best Practices" for index maintenance and they're been and are still wrong even after more than 2 decades and that's also true for things like the use of Random GUIDs being bad and ever-increasing indexes always being good.
I'll also tell you that most instruction about any language first teaches you the "Hello World" example to make sure you have everything setup correctly. Then, they teach you some syntax and then teach you how to loop/count. Most instruction sets never even come close to doing the later and they certainly don't explain up front that SELECT, INSERT, UPDATE, and DELETE are actually machine language loops behind the scenes. That's an incredibly important concept that they all seem to miss when teaching neophytes how to program in SQL.
It's also important to understand that, just like any other language, the real power is in the functions of the language. In SQL Server, date and time functionality is incredibly important.
And, last but not least, I don't know what your background is but, if you want a hint to quickly becoming a good database programmer, the first step is to realize that you're working in a declarative language rather than an imperative procedural language. To simplify the meaning there, do like it says in my signature line below...
"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."
,,, and also realize that doesn't mean just one column at a time. 😉
--Jeff Moden
Change is inevitable... Change for the better is not.
March 21, 2022 at 11:12 am
This was removed by the editor as SPAM
March 21, 2022 at 4:05 pm
My approach was to get certified in the tool I was going to be supporting - Microsoft SQL Server. I started my training at Ucertify which I liked as it had reading-based learning which is how I learn best, plus it had practice questions for me to do prior to writing any tests. I have done udemy courses before too, but I find video-based training I don't learn as much with.
I do agree with dwailos though that knowledge of SQL is not always enough. Knowing how to write a query and install a SQL instance doesn't mean you know how to write efficient queries or tune queries or debug queries. For example, you may know how to write TSQL and solve a lot of problems, but if you use cursors or while loops all over the place, you are going to hit performance issues with large data sets. Or if you don't know when to add or remove an index, you are going to hit snags too!
My opinion though - the biggest "help" to landing a DBA job without having prior professional DBA experience is knowing people and being able to prove you know what you are doing. Getting your foot in the door is the first step, and once you have your foot in, you can talk to people and have them mentor you and learn from them on how to administer the systems.
I would also reach out to the DBA team and the DBA team lead or manager to see what they would want from you to get into that position. You may be able to jump in with minimal prior training if they just put you in as a Jr DBA or Jr DB Developer or whatever they need and you can prove to them that you can do the work and help them with their workload. Alternately, coming in as a Jr DBA/DB Developer also gives you a chance to see if that is the career path you want to pursue. Last thing you would want to do is invest time and money into official training only to find out you hate being a DBA!
But reaching out to the team you want to apply for (especially since you already did the hard part - got your foot in the door!) will show them that you are interested and if they require a degree for the position, you will know what you need to do. If they are good with certifications, you know what you need to do. If they are overworked though, they may just appreciate the offer and throw you in with some of the easier tasks so they can focus on the harder ones. That being said, with it being healthcare, it may be unionized and they may have a list of requirements before you can get the position. Pretty sure that is how the healthcare system works where I live anyways...
Another thing that can help is getting involved in the SQL community. If you have a local user group, attend that and learn and possibly even present! You can pick an "easy" topic and present on it, even if everyone has done that before. It is like Jeff said - what was "best practice" 20 years ago, is likely no longer best practice. Or maybe you could come in and show how something that was best practice 20 years ago still stands true today. Another fun topic is like what Jeff pointed out - find something that everyone takes as "true" and then test it out. The INT for a PK vs a GUID for the uniquifier of the PK. Which is the better option? why is it the better option? is it the better option every time? Are there other options that are even better than those (CHAR, datetime, etc)? I did a presentation ages back on crappy hardware trying to show how having an index on a table improved SELECT performance but could hurt INSERT, UPDATE, and DELETE performance. Unfortunately, my demo box misbehaved and showed that a HEAP was SLIGHTLY slower at inserting 10000 rows into a table than one with a clustered index... worked great at the second presentation where I tossed it all into an Azure VM so I could have better results. If you DO present, I highly recommend you get a cloud based VM for doing demos. If your laptop dies during your presentation, you may be able to borrow someone elses and continue from there!
The above is all just my opinion on what you should do.
As with all advice you find on a random internet forum - you shouldn't blindly follow it. Always test on a test server to see if there is negative side effects before making changes to live!
I recommend you NEVER run "random code" you found online on any system you care about UNLESS you understand and can verify the code OR you don't care if the code trashes your system.
March 21, 2022 at 5:25 pm
Knowledge of SQL is not enough to secure most DBA jobs. Established companies prefer to hire someone with a degree in a computer science field, experience and knowledge of their industry, and appropriate certifications. Companies prefer to hire those who have experience in the version of SQL used in the industry
Heh... lordy... don't get me started on degrees and certs.
--Jeff Moden
Change is inevitable... Change for the better is not.
March 21, 2022 at 5:48 pm
To add to what Jeff said - I got my DBA (Jr. DBA at the time) job with no degree or any certs. I got some certs after getting the DBA job, but I did do a lot of training. And, in my opinion, the training I did (PASS Summit, user groups, youtube, SSC), I learned a LOT more than the cert offered...
The above is all just my opinion on what you should do.
As with all advice you find on a random internet forum - you shouldn't blindly follow it. Always test on a test server to see if there is negative side effects before making changes to live!
I recommend you NEVER run "random code" you found online on any system you care about UNLESS you understand and can verify the code OR you don't care if the code trashes your system.
March 22, 2022 at 2:51 am
To add to what Brian said, I've been a Director of MIS, a Software Development manager, and a couple of other highfalutin sounding titles and I'm kinda good at SQL Server and T-SQL. I aced every math course I ever took (actually taught my Alge-Trig 2 class because the instructor keep coming in too drunk to teach) and taught my Calc 2 instructor how to make such a dry subject fun. I also taught a c month electronics course from womb to tomb a few times and wrote a 200 hour course on microprocessors years before Bill Gates could spell "PC" or DOS or even "CPM" while I was in the U.S. Navy. I was a "plank owner" of the PC Support group at Raytheon Submarine Signal Division and I built about 3,000 PCs with another fellow and wrote and taught about 30 courses for their users.. We both knew about 3,000 people by first name and a lot of last names. I took a small telephone company for $50K GOR per month to %2.6 MILLION GOR per month with nearly a 30% profit after all the bills were paid. I built the server for the company and mostly taught myself SQL Server and T-SQL a long time back. I didn't invent the Tally/Numbers table but took the previously advanced subject and helped make it a 'household name" for many that have turned around and now teach it. I'm also the fellow that coined the term RBAR I've spoken at PASS, many SQLSaturdays, GroupBy and SQL Server user groups on many complex subjects and I'm the leading poster on this forum.
I have no degree. I have no certifications. But... I do have drive. 😀
--Jeff Moden
Change is inevitable... Change for the better is not.
March 23, 2022 at 9:47 pm
If you're working with SQL Server, look for SQL Server internals material. One prominent author worth checking out there is Kalen Delaney and Paul White. Lookup her/his stuff online (since you prefer online only).
Or, if you really want to learn the stuff properly, get some good books, starting with SQL Server internals by Delaney and others.
Since you also want to learn SQL itself, look for stuff by Itzik Ben-Gan. He has lots of stuff online. But, again, for truly deep learning, pick up some of his books.
As to certs, when they very first started, they were valuable. Then they just became memory dumps, and the vast majority of people that got a cert did so because they didn't really know anything or have valuable experience but wanted to get a job anyway.
Personally, if someone I was interviewing was familiar with Ben-Gan's stuff and Paul White's stuff, that would impress me more than a cert.
SQL DBA,SQL Server MVP(07, 08, 09) "It's a dog-eat-dog world, and I'm wearing Milk-Bone underwear." "Norm", on "Cheers". Also from "Cheers", from "Carla": "You need to know 3 things about Tortelli men: Tortelli men draw women like flies; Tortelli men treat women like flies; Tortelli men's brains are in their flies".
Viewing 8 posts - 1 through 7 (of 7 total)
You must be logged in to reply to this topic. Login to reply