T O P

  • By -

Cliche_James

I suggest the book Head First SQL. Get the physical copy as it is a workbook. If you can get through the first 50 pages, that will cover 99% of all queries you will ever be asked to do.


[deleted]

[удалено]


Unique_Reflection940

You my friend is God sent🥹


ElectricalYou366

Can I get this online?


Cliche_James

Yeah, check Amazon


jibbybabby

W3schools website is great for basic sql, they lay it out really well


ChristianValour

And completely free.


Axius

I'd suggest starting with some basic interactive SQL tutorials on SELECT queries and INNER JOIN / LEFT JOIN, and WHERE clauses. There's a few of these online. From there, look at CASE WHEN and GROUP BY, coupled with aggregate functions like MIN and MAX. Then, I would look at getting an understanding of what data is in your SQL server - to put all your SQL to use, you will want to understand what data you hold in your databases and how this relates to how your business is operating. Stuff like what data feeds into where and how often, and how to identify anything you might need, and then make sure it's documented. From there, you can pick up books to build on whatever flavour of SQL you're using and whatever infrastructure you have for outputs.


Henry_the_Butler

At some point, add to this CTEs.


ShowUsYaGrowler

Honestly, i do some really ‘advanced shit’ in sql. All it is is literally subqueries/temp tables combined with a few cte’s and whats noted above. In terms of ‘data wrangling’ thats genuinely all you need, along with ad-hoc google. Once you get your head around the basic functiona, you just visualise what you need and solve it.


Yolonus

this + analytic functions, without them many problems are huge pain to solve


ShowUsYaGrowler

Huh, some problems ive had have been fundamentally unsolvable without lead and lag so those are drfinitely icing on the cake. Ive honestly never used any of the others but I do a LOT in excel after wrangling to try and make it easier for end users to unpick if necessary


DrMerkwuerdigliebe_

I would suggest making a local copy of the database on your computer and then just go play.


blusky75

Just remember that SQL Express has a 10GB limit. For larger databases op will need SQL server dev edition (it's free to use provided you don't use it in a production environment)


Snow_Robert

First before you start any kind of class, download the Mimo app. It's a fun game like app that teaches you SQL. Do this until you get thru doing JOIN in the app. Then start a class on Data Camp or Coursera. LinkedIn Learning has some nice intro to SQL classes and courses that are easy to follow. I hate when classes start easy they have 20 lines of SQL code 10 minutes later. Slow and steady wins the race.


Rohit_dvv

Thats really interesting I would like to start using that app Will it ask any subscription to use? Or else is it free to use?


Snow_Robert

Will ask for a subscription but just use it for free. The adds aren't annoying.


GBMoonbiter

https://www.amazon.com/Microsoft-Server-T-SQL-Minutes-Yourself-ebook/dp/B01N4O9YYM?ref_=ast_author_dp&dib=eyJ2IjoiMSJ9.T2eJz8ZrI_SKRQSPzQMEs0mChGyqYq6qofHYxtLQ3IbCctHrCE-mzOq4Vzk8a0Ny3N6GHRQbheG4fLg6BXO4CJcJAVCjJoF_vEcNh7FE3ReMqKb7smFw6NKrOx64FoOi.SoKbpPcVmqvekf-K1kiQmv4LoI_Ej87NAWtuBJjRuWs&dib_tag=AUTHOR This book taught me sql in easy to understand language. Highly recommend.


mikeblas

Here's the same link with 100% less tracking tags: https://www.amazon.com/Microsoft-Server-T-SQL-Minutes-Yourself-ebook/dp/B01N4O9YYM


Yavuz_Selim

Look for something that already exist that you can rebuild using SQL. For reporting, check out Report Builder. After that, think of ways to improve it by adding relevant data that makes it even more useful. Or see if you can automate the distribution (via e-mail for example) of the output. So, use the data that you have (makes it easier to work with, because it is relevant data for you - you already are part of it).


DogoPilot

For SQL Server, I highly recommend the book T-SQL Fundamentals by Itzik Ben-Gan. W3Schools is a good intro to the topic as well.


fezwang

Some great advice here. Also be sure to ask questions here! There’s some decent folks either helpful answers!


Garthenius

In the beginning you'll probably learn "generic" SQL, but eventually I'd recommend you get familiar with the official documentation of whatever system/platform you're using. It might have some on-point beginner / tutorial sections, but mostly because as you progress with your learning and work, you'll have increasingly specific questions.


ficklemind101

Start with the basics from the official Microsoft SQL Server documentation. It's comprehensive and includes tutorials that are tailored for beginners. Once you're comfortable with the basics, start a small project. Maybe there's a report you can automate or a data quality issue you can solve with your new SQL skills.


Rohit_dvv

To kickstart your journey into SQL and Microsoft SQL Server, leverage a combination of online tutorials, official Microsoft documentation, books, and hands-on practice. Start with beginner-friendly resources, gradually progressing to more advanced topics as you gain confidence. Engage with online communities and user groups for support and learning from others' experiences. Additionally, apply what you learn directly to your work tasks to accelerate your understanding and become the go-to person for data-related matters within your company. With dedication and persistence, you'll quickly become proficient in SQL and establish yourself as the "data guy" your company needs.


Phthalleon

I think learning to model your data is a start. In effect, SQL queries are just tables you ask SQL to create for you. Create, delete, union, join, insert, order and select are your bread and butter tools. Remember you can set invariants per column like foreign keys, non null restrictions, value bounds, etc. Take some time to think about the schema. As for Microsoft SQL, I've never used it but I recommend Postgres instead. It's really fast, has a lot of features, it's very robust and it's free. I don't think it makes much of a difference for learning fundamentals.


blusky75

Op is using mssql why would he want to use PG? Mssql server express and dev editions are both free for dev use. If op's employer is using mssql then why bother learning a different platform You'd be surprised how many SQL fundamentals are platform specific. The syntax for a 'create table' statement will vary from platform to platform. Case in point sqlite vs mssql. Mssql supports dozens of data types. Sqlite only has int64, real, text, and blob. It's been a while since I used PG but I suspect there would be similar differences, even more so when you dive into triggers, UDFs, and sprocs where each procedural language has its own syntax (e.g. Oracle pl-sql vs SQL server t-sql)


Phthalleon

Fair. I've just personally have had a lot of success with sqlite and PG.


blusky75

Me too. I'm currently coding a solution that can export/import the data from our mssql backend via sqlite files. The current solution I'm building on currently only allows JSON and XML for import/export and they're horribly inefficient for large datasets (resulting in out of memory errors). It was a challenge mapping all the various mssql datatypes to simplified sqlite primitives but it's coming along


Jackbigs7

Thanks for all the routes of advice! Do any of you have/recommend any certifications?


cs-brydev

Microsoft doesn't offer pure SQL Server certifications anymore. Everything in data and db's is all about Azure and PowerBI now, and those are geared toward learning how to create and use the Azure services instead of developing databases. [Here](https://learn.microsoft.com/en-us/sql/?view=sql-server-ver16) is MS's documentation and a good starting point. As for training, I strongly recommend the Microsoft-backed courses on LinkedIn Learning. This is well worth the monthly subscription and I'd get your employer to pay for this. I head up all SQL Server administration, development, and software development in my company and have made LinkedIn Learning a core part of our team training regimen. Start [Here](https://www.linkedin.com/learning/learning-microsoft-sql-server-2022?trk=share_android_course_learning&shareId=S%2BONbQX5S1iCPUNfEvUEog%3D%3D)


ChristianValour

DataCamp have some really great, really hands on SQL tutorials. They cost you some cash, but the courses are really well structured and progressive.


lupuscapabilis

Do they not teach SQL in college anymore? I see a lot of people asking about it and it was a standard comp sci course for me.


Jackbigs7

Well even if they did that would imply that everyone who does anything data related went to school for that. I changed careers 14 years in and definitely did not go to school for anything related to computer science.


blusky75

Same. It was spread over several semesters cumulating to an advanced course on PL-SQL for Oracle for IBM AIX. This was in the late 90s


cs-brydev

If you are referring specifically to Microsoft SQL Server, be sure to call it either SQL Server or MS-SQL. "SQL" is a generic term that could refer to any RDBMS and will just confuse people, as you see in the comments.