Learn SQL Joins
HTML-код
- Опубликовано: 25 июл 2024
- An easy-to-follow SQL joins tutorial, with lots of examples. Covers the main types of SQL joins, namely:
- INNER JOIN
- LEFT OUTER JOIN
- RIGHT OUTER JOIN
- FULL OUTER JOIN
- CROSS JOIN
0:00 Introduction
0:40 INNER JOINs
9:08 LEFT OUTER JOINs
13:04 RIGHT OUTER JOINs
15:36 FULL OUTER JOINs
17:10 Tailoring the matching criteria
18:40 CROSS JOINs
19:24 Joining a table to itself
21:06 Conclusion
CONTENTS
0:00 Introduction
0:40 INNER JOINs
9:08 LEFT OUTER JOINs
13:04 RIGHT OUTER JOINs
15:36 FULL OUTER JOINs
17:10 Tailoring the matching criteria
18:40 CROSS JOINs
19:24 Joining a table to itself
21:06 Conclusion
Thank you so much! You are my favorite RUclips teacher. Your video on normalization saved me in my first SQL class! So glad to see new content.
I know these must be incredibly time consuming to make, thank you so much for doing them!
That's very kind! I'm glad the normalization video was of so much help to you. These videos are pretty time-consuming to make, for sure, but I figure once I finish making a video it's there forever, and I can see from the comments that a lot of people are genuinely being helped by them. Which motivates me to continue making them, albeit slowly!
@@decomplexify The value you provide with these videos is really great!
You have great presentation skills! Thank you so much for what you do. I'm doing a database management course that I've been struggling with and you're normalization video really helped!
Thank you so much! I have watched several of your videos now, and they are excellent explanations! I love your animations and your format. I was able to pause the videos, stop and think how I would create the Query, and then continue to see the syntax.
This has been so helpful. I hope you continue to make new content. I will be eager to see it!
I keep coming back to these videos and learning something new every time!
Just over 5 minutes in and I am understand so much better. I have done joins before, but wasn't really able to picture it so it made more sense to me. Thank you.
Loved it! Perfect and concise explaination to a very complex topic
Your videos are truly awesome, thank you for making them
please continue with this course, you're the best!
Right the time I was looking for Join videos. I met your videos with database normalisation. I think your methodology works best for me. Keep it up!
If I had teachers like you in college, I would become a billionaire by now!
That's a weird analogy ..but ok
@@monikagupta1396 You are weird ..but ok
@@monikagupta1396it's a hypothetical, not an analogy
well you have teachers on youtube like this now, lets get them billions fam!
me only a multimillionaire
I was having hard times understanding joins, thanks for this amazing video it helped me grasp the concept better.
Great stuff! This tutorial deserves million views.
these videos are great. please start again...
Just what i needed to learn, Thank you !! !
This is top notch quality. Loved it
I am a total stranger to databases in any professional/formal context, even though I have engaged in what I now (after watching your videos) realize was table normalization a couple of times, e.g. while using Dataview in Obsidian, or Notion.
After watching this video in particular, it occurred to me that those massive Excel spreadsheets, which some companies base their entire operations on, seem strikingly similar to SQL-based databases with all the JOINs, WHEREs and whatnot.
But anyway, I wanted to thank you for all the excellent videos with clear explanations, helpful examples and great visuals. Really looking forward for the video(s) about the 4th&5th Normal Forms :)
Amazing Video! Keep making more on databases!
Please keep it up! You will have a large subscriber base if you do!
Your videos are wonderful, thank you 💗
definetly my favorite youtube teacher !!
Amazing - hope you find some free time and pump out more videos cause this stuff rocks!
Pretty clean explanation , thanks for your efforts .
Thank you!
I love the explanation in simple examples
If I can suggest one topic it would be the one you alluded to in the denormalization video about things we can do for processing layer optimization: sharding, indexes, and statistics
your videos are really helpful. liked the way you explain the concepts. keep going , looking forward to watch more of your videos.
thanks so much for sharing your wisdom!
Love your videos ❤
We need more database videos. You explain the concepts so well.
Keep up the good works!
Your videos are great. Can you do some advanced SQL stuff please like procedural function,triggers etc
Such a comprehensive video on joins. You are so underrated. Wish you great number of subs. 🤗
Thank you!
I want to approve my days off maself like Olivia does. Btw the video is lit 🔥
Thanks for the video, it explains very clearly a difficult concept
thank you for your explanations, they are really great and very helpful. Hope, that you will have a time for new videos. For me will be interesting to see topics like transactions or indexes, or even about executions plans
thank you so much, this is extremely well explained and useful
more please, thank you!
Why you stopped doing videos. It is very useful for us. The way of explaining is awesome. Please continue the videos.
Thank you a lot!
Thanks for the great video (again).
I have two suggestions.
- recursive sql requests (e.g. for hierarchies as employee->boss(also an employee)->boss…
and
- a join, where I only get one result from the rigt table matched with a condition like min/max/latest (e.g. a gamer joined to (only) the latest purchase he did).
Maybe these are to small topics, but maybe they can find a place inside a bigger one. These are often situations that seem to be easier, than they actually are.
Thanks for the good content!
I liked ur video with both my accounts, so make more of em
Great video, Thank you. Could you do a video on Subqueries and CTEs (With Clause)
I didn't know that we can do self-join. thank you!
HUGE thanks❤
Great video!
Thanks!
More SQL please and thank you :D
Thank you!
Fantastic
MORE VIDEOS PLEASE!
Thank you
Nice! keep going sir, we need subqueries as well
you are amazing
It will be grateful if you can make videos on indexing, partitioning, sharding, cap, etc.
THank you
Great video, thanks! Will you make more?
Eventually, yes!
Learned a LOT from all your videos!! If you don't mind, how do you make these videos? What video editing software are you using? I find it super cool and simple. Thank you!
Thanks! I use Videoscribe.
Can you start uploading videos again ? I love them
Super
,HI, why you are not uploading any new content anymore? I found your videos very very useful, please keep creating great content, thanks
Hi,
Please could you do a video on Star schemas and fact and dimensions tables 🙏
Can you decomplixify object oriented programming and design patterns? Thank you!
Please, explain relationships! 1-N, N-N, etc. Thanks for everthing!
Wish you had more to come in the near future!!
Also might seems unrelated but what is the handwritten font you're using? looks amazing!
I'll try and make more videos when I have some free time! Thanks, the font is called Kalam.
@@decomplexify Much appreciated
what do you use for this handwriting animation please tell me
I use Videoscribe.
Where did you go?
in the instruction you were changing the names of tables but not using the "as" is there any special way to do this or just giving the new name at the end of the query?
we need window function on sql
Inner join questions: why do you query that way?
I mean Why do you join and then filter, but not get letter of Hydrogen, then filter it from compound details and then query the data only for rows that you interested in? I mean why you do not use natural for manual search algorithm? Whan downsides of that approach?
An SQL query is just a question that we want the database platform to answer for us. The database platform decides what strategy/algorithms to use internally to come up with the answer - all database platforms have "optimizers" which choose the most efficient strategy/algorithms to use internally to answer a particular query. It's pretty likely that in this case, a query optimizer will use a strategy like what you are suggesting. But just remember: an SQL query doesn't prescribe HOW to answer a question. An SQL query IS the question.
@@decomplexify this explanation is an eye opener for me, thank you
@@decomplexify Oh my God! I just had a revelation thanks to you: query = question. So SQL is actually the a way of how to properly ask questions. How on earth that escaped me...? I have always thought that it was just forging your way to the answer, whereas the system is building that for you, you just ask. Thank you so very much!
i have some problem in last portion
I hope it's not the last video
MAKE MORE VIDEOS
i kow that you read comments.. just wanted to know why you stopped. i am a aspiring data analyst. pls help teach it. thanks
More sql topics to be simplified:
1. Subqueries and its types.
2. Common Table Expressions
3. Recursive CTEs
4. Date-Time Manipulation
5. Stored Procedures
6. Windowing Functions
Please see if you can also help with above topics.
Decomplexify: we bring simplicity to complex topics
Also Decomplexify literally 1 second later: suppose we have a database with chemical compounds and their elements ☠️
Yes, I thought the same thing. He could have definitely made the tables much simpler.
SELECT c.compund_name, c.compund_id
FROM compund c
JOIN compund_element_detail ced
USING compound_id --Or (ON c.compund_id = ced.compound_id)
WHERE ced.element_symbol = 'H'
would this not work? This is what I came up with before the video showed its answer. I guess I don't understand why the 3rd table 'Element' needs to be joined. Trying to get better at thinking through this so any help is appreciated
It's probably because the question asks for "Hydrogen", should work on reading questions fully lol
Great video but your deduction logic in the elemt tables is wrong, you start "knowing" that Hidrogen is represented by the leter H, but you can't asume this, you should do the folowing: Look at the element table and check what element symbol represent the hidrogen and the go to compound element detail to check element symbol vs compound id and with that go to the compound table
the last result table is wrong as there is not match for 3 ,4,5 in approver_emp_number so the result should contain only 3 rows where they match please tell i am wrong i am looking at for hour trying to know why
Take each row in the table, look at its Approver Employee Number (call it n), then find a row in the Employee table whose Employee Number is n. That's the matching that this join is doing.
@@decomplexify thanks so much but would I be right if we mixed it to be E.employee = AP.aprovel right
@@YoussefAdelZinIf you did that, the query would still return 6 rows, and the headings in the query output would become misleading because "e" is now the approver and "ap" is now a person who gets days off approved by the approver. So the query wouldn't really make sense any more. But it would return 6 rows.
@@decomplexify I understand but it would not contain 2,3,5 it will contain two 1s and three 6s and btw thank you very much for carrying and answering me
Actually it's a great video
But I have a little comment that regarding data integrity
You violated it at 20:18
When you listed the employees table
You assigned the first row with an approver employee
Which is not exist while inserting the row
I hope you got me
Hi Marawan, thanks for your comment. There are many options available for enforcing foreign key constraints. One of them is to enforce the constraints only when everything inside the transaction has completed. So: imagine that the insertion of all those rows occurs in a single transaction, and the constraint checking occurs after all the inserts complete, allowing the transaction to commit.
@@decomplexify i know broo
But really i love your channel
You always talk about important stuff
Can you make a video about CTE
And ER modeling
I think it will be great
@@marawanlotfy1477 Thanks! I've been thinking about perhaps doing an ER modelling video at some point.
why did u stop uploading?
Haven't had time to make videos lately, but I will resume at some point.
BRO WTF HOW YOU GET 40K SUBSCRIBERS ON JUST 7 VIDEOS MY MAN
dude, you really overcomplicated this topic...
He did so by using chemical compounds and their elements as table examples.