Тёмный

Self Join in SQL 

Database Star
Подписаться 52 тыс.
Просмотров 40 тыс.
50% 1

A self join in SQL is where you write a query on one table that joins to the same table a second time. It's used when you have a record in the table that refers to another record in the same table.
A common example is employees and managers, or product categories. Anything with a "hierarchical data" setup may use an SQL self join.
This video shows you what an SQL self join is, how to write one, and how to overcome issues with column names and missing data.
You can find out more about joins overall in this guide here: www.databasestar.com/sql-joins/
If you want more database training, practice questions, and guides, enroll in Database Star Academy here: www.databasestar.com/dsa/
If you have any suggestions for other videos or comments on this one, let me know in the comments below.
Timestamps:
00:00 Introduction
00:12 Self Join definition
01:38 Employee solution
06:03 Final query
06:45 Categories example
07:30 Left Join
/// RESOURCES
📝 Get my free SQL Cheat Sheets: www.databasestar.com/get-sql-...
🧭 SQL Roadmap from basics to advanced: www.databasestar.com/sql-road...
✍️ Learn how to design a database: databasestar.mykajabi.com/edd
📧 Contact me here: www.databasestar.com/contact/

Наука

Опубликовано:

 

1 июн 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 103   
@yawenxue2963
@yawenxue2963 2 года назад
I like how you talk :quiet and clear
@DatabaseStar
@DatabaseStar 9 месяцев назад
Thanks!
@Moon22m
@Moon22m 5 дней назад
Thank you so much! I was trying to understand the ON statement in SELF JOINS and you've explained it perfectly.
@DatabaseStar
@DatabaseStar 4 дня назад
Glad it was helpful!
@gauravsrivastava17
@gauravsrivastava17 4 дня назад
9:05 writing query and making er diagram is so much helpful
@DatabaseStar
@DatabaseStar 2 дня назад
Glad you found it helpful
@elioko3639
@elioko3639 2 года назад
Definitely needed this and you explained it perfectly
@DatabaseStar
@DatabaseStar 2 года назад
Thanks!
@kpamiose
@kpamiose 2 года назад
Thanks for breaking this down so simply.
@DatabaseStar
@DatabaseStar 2 года назад
Glad you like it!
@preciouschinenyenwa8490
@preciouschinenyenwa8490 3 месяца назад
Thank you, I was struggling to understand self join, but after watching your video, I realised how simple it is.
@DatabaseStar
@DatabaseStar 3 месяца назад
Glad it was helpful!
@joel-rg8xm
@joel-rg8xm Год назад
Man! That CATEGORIES example saved me just in time before creating many tables. Thanks
@DatabaseStar
@DatabaseStar Год назад
No problem, glad it was helpful!
@astorgadexterpelaez3502
@astorgadexterpelaez3502 8 месяцев назад
thank you! been lurking in your channel for a while now, great content sir!
@DatabaseStar
@DatabaseStar 8 месяцев назад
Awesome, thank you!
@mdimranhussain171
@mdimranhussain171 Год назад
got here from a course i couldnt understand this self join and Thanks to you it's all clear now. you explained it really well with the perfect examples. Keep up
@DatabaseStar
@DatabaseStar Год назад
Great to hear!
@Kornackifs
@Kornackifs 5 месяцев назад
I struggled with an intermediate leetcode sql problem I didn't want to see the solution right away so i started searchin on sql topics to full the knowledge gap but what i found is actually a video solving the problem itself fuck me
@DatabaseStar
@DatabaseStar 5 месяцев назад
Oh is that a good thing or a bad thing?
@Kornackifs
@Kornackifs 5 месяцев назад
@@DatabaseStar I don't maybe I should've solved it on my own 😥
@Kartik-vj5os
@Kartik-vj5os Год назад
Even after a year you are helping guys like me! Thanks for clearing my doubt
@DatabaseStar
@DatabaseStar Год назад
Thanks! Glad you found it useful.
@user-xs3kf9tx1m
@user-xs3kf9tx1m Год назад
Huge thanks for such a clear explanation! Helped a lot!
@DatabaseStar
@DatabaseStar Год назад
Glad it helped!
@metaman8662
@metaman8662 6 месяцев назад
I'm thankful I found this video your explanation is what I needed!
@DatabaseStar
@DatabaseStar 6 месяцев назад
I’m glad you liked it!
@raeezmoosa5493
@raeezmoosa5493 Год назад
Thank you for the clear and simple explanation. I remembered seeing the Employee - Manager example somewhere a few years ago, but I couldn't recall where exactly I saw it.
@DatabaseStar
@DatabaseStar Год назад
Glad it was helpful!
@dhruvitmodi3043
@dhruvitmodi3043 3 месяца назад
Nicely explain in simple terms...checked many of your videos too... I am being SQL developer, liked your work 👍
@DatabaseStar
@DatabaseStar 3 месяца назад
Thanks! Glad you like the videos.
@thanzeeljalaldeen
@thanzeeljalaldeen 2 года назад
somethething that i needed currently for my project. thanks a lot sir
@DatabaseStar
@DatabaseStar 2 года назад
Glad it was helpful!
@kim-ex5cn
@kim-ex5cn Год назад
THANK YOU. i have read a hundred tutorials and was stuck on the alias. starting with the from and on clauses and explaining the AS is implied and then going back to the select cracked things open for me. much appreciated.
@DatabaseStar
@DatabaseStar Год назад
Thanks for the kind words! I’m glad this video helped you understand it.
@TK-ko3fg
@TK-ko3fg 9 месяцев назад
King of SQL explanation
@DatabaseStar
@DatabaseStar 9 месяцев назад
Thanks!
@quynhanhnguyenthi1686
@quynhanhnguyenthi1686 2 года назад
Thank you so much for this clear explanation
@DatabaseStar
@DatabaseStar 2 года назад
Glad you liked it!
@slimandahra4294
@slimandahra4294 2 года назад
your explaining is great thank u..and good luck
@DatabaseStar
@DatabaseStar 2 года назад
Thanks!
@kumruorkun3947
@kumruorkun3947 Год назад
Very clean, thank you
@DatabaseStar
@DatabaseStar Год назад
Thanks!
@BronProject
@BronProject 2 года назад
Thank you for this!
@DatabaseStar
@DatabaseStar 2 года назад
Glad it helped!
@Deleted_Account_2023
@Deleted_Account_2023 Год назад
Great content! Awesome channel!
@DatabaseStar
@DatabaseStar Год назад
Thanks so much!
@hyperborean72
@hyperborean72 26 дней назад
lovely example
@DatabaseStar
@DatabaseStar 26 дней назад
Thanks!
@oscarpalomares8282
@oscarpalomares8282 Год назад
Great explanation!
@DatabaseStar
@DatabaseStar Год назад
Thanks!
@ExcelTutorials1
@ExcelTutorials1 2 года назад
This is super helpful! Your voice is almost like listen to ASMR, lol. Nice to listen to
@DatabaseStar
@DatabaseStar 2 года назад
Heh thanks- I’ve been working to improve the audio on my recent videos so the older ones may sound softer.
@teenytinytoons
@teenytinytoons Год назад
It's not almost like, IT IS!!!
@ZenonMcRae
@ZenonMcRae 2 года назад
Nice & clear
@DatabaseStar
@DatabaseStar 2 года назад
Thank you
@humbertojesustoledovazquez5891
@humbertojesustoledovazquez5891 2 года назад
What a video!!! Thanks :)
@DatabaseStar
@DatabaseStar 2 года назад
Glad you liked it!
@lehadypierrengangue4149
@lehadypierrengangue4149 3 года назад
thanks for the content !!
@DatabaseStar
@DatabaseStar 3 года назад
No worries!
@TheBoysZone
@TheBoysZone 2 года назад
This is how you should teach SQL.....step by step
@DatabaseStar
@DatabaseStar 2 года назад
Glad you like the video!
@bouslamafathi3581
@bouslamafathi3581 Год назад
Perfect explanation thanks a lot
@DatabaseStar
@DatabaseStar Год назад
You are welcome!
@arnosolo2008
@arnosolo2008 3 месяца назад
Thank you.
@DatabaseStar
@DatabaseStar 3 месяца назад
You're welcome!
@michaelchiz8055
@michaelchiz8055 Год назад
Good tutorial
@DatabaseStar
@DatabaseStar Год назад
Glad you think so!
@newbeginning3089
@newbeginning3089 Год назад
Thanks. It was 👍
@DatabaseStar
@DatabaseStar Год назад
You're welcome!
@olufemiolawale3848
@olufemiolawale3848 10 месяцев назад
Thank you sir
@DatabaseStar
@DatabaseStar 10 месяцев назад
You're welcome
@luizetulio4888
@luizetulio4888 Год назад
Great video. Is it possible to use self join and a many to many relationship simultaneously or it would work only for one to many? For example if an employee has 2 or more managers...
@DatabaseStar
@DatabaseStar Год назад
Good question! Yes, that is possible. Another example of using that could be if you want to capture the parents of a person, where each person could have more than one parent.
@rural_world
@rural_world 3 месяца назад
Perfect
@DatabaseStar
@DatabaseStar 3 месяца назад
Thanks!
@RoysIdea
@RoysIdea 6 месяцев назад
So how would you expand these queries if you want to order them from top to bottom, with a level or additional spaces? So start with Clair (who has no manager), followed by a manager and his/her team, etc. And include a level column.
@DatabaseStar
@DatabaseStar 6 месяцев назад
Good question. It depends on the database vendor, and I've written more about it here: www.databasestar.com/hierarchical-data-sql/
@enricoroselino7557
@enricoroselino7557 Год назад
and what if there is a period validity of the structure (include year and month column) ? should i put it on the same table ? is it okay to have duplicate rows of ppl name?
@DatabaseStar
@DatabaseStar Год назад
Good question, I think it's OK to have on the same table.It would then be an additional condition on your join, or in the WHERE clause, to check if a record falls in a certain date range.
@aakash1763
@aakash1763 Год назад
Great explanation just one doubt in the ER diagram for both examples of self join why did you show 1:many relationship?
@DatabaseStar
@DatabaseStar Год назад
Good question! It's because of the way the two concepts or records are related. For example with employees and managers, an employee has one manager, but a manager can have many employees. This is a one-to-many relationship, so I've drawn it that way on the diagram. Hope that helps!
@chesterliu1929
@chesterliu1929 2 года назад
At 6:38, relationship between id and manager_id is one to many which means one manager_id can have multiple employee_id to manage. However the multiple arrow sign is pointing to manager_id which should mean many manager_id can manage one employee_id. I think the arrow should be the opposite way, right?
@DatabaseStar
@DatabaseStar 2 года назад
Ah yes you're right! The arrow should be the other way around. Thanks for letting me know.
@offlinedie
@offlinedie 2 года назад
@@DatabaseStar Hi! Sry I think you were correct in the video, Since the foreign key is always on the many side in a EDR. Right?
@balaji2035
@balaji2035 5 месяцев назад
hi sir I have one doubt if we specify e.manager_id =m.id it will give the result only the both columns having same values right example manager_id =1 and emp_id also 1 or how does it works can you please clarify my doubt.
@DatabaseStar
@DatabaseStar 5 месяцев назад
Yes, if you match on e.manager_id = m.id it will show employers and their managers, which is correct.
@MDARUN-ph1dw
@MDARUN-ph1dw 3 года назад
No wonder why you are calling yourself a database star 🔥🔥🔥🔥😁
@DatabaseStar
@DatabaseStar 3 года назад
Thanks! The name is more for my readers and viewers to become "database stars" by learning and improving :)
@MDARUN-ph1dw
@MDARUN-ph1dw 3 года назад
@@DatabaseStar 😁😁🔥🔥🔥🔥🔥🔥🙏🏻🙏🏻
@AmanRaj-zo7bx
@AmanRaj-zo7bx 4 месяца назад
in ERD Diagram, id to manager_id relationship is One to Many, which means an employee can have multiple managers but one manager can not have multiple employees !! But it's not the case here, please clarify it.
@DatabaseStar
@DatabaseStar 4 месяца назад
Good point, the employee can only have one manager but the manager can have many employees.
@AmanRaj-zo7bx
@AmanRaj-zo7bx 4 месяца назад
@@DatabaseStar Thanks for clarification.
@gauravsrivastava17
@gauravsrivastava17 4 дня назад
@DatabaseStar
@DatabaseStar 2 дня назад
Thanks
@jaymo2024
@jaymo2024 Год назад
04:45 the ON clause is what you need to know the rest is bloatware
@DatabaseStar
@DatabaseStar Год назад
Thanks for the comment!
@souronion3822
@souronion3822 4 месяца назад
It is okay
@DatabaseStar
@DatabaseStar 4 месяца назад
Thanks!
@poojamore056
@poojamore056 5 месяцев назад
Hey, the employee example was good! I waited till end for another example tho.. 🥲
@DatabaseStar
@DatabaseStar 5 месяцев назад
Thanks! Good point, I should have included more examples.
@spaaaaace8952
@spaaaaace8952 Год назад
Thank you.
@DatabaseStar
@DatabaseStar Год назад
You're welcome!
Далее
Database Design for Custom Fields
18:39
Просмотров 24 тыс.
When to Use a Subquery in SQL
8:50
Просмотров 29 тыс.
6 SQL Joins you MUST know! (Animated + Practice)
9:47
7 Database Design Mistakes to Avoid (With Solutions)
11:29
SQL Indexes - Definition, Examples, and Tips
12:14
Просмотров 67 тыс.
Learn SQL Joins
21:38
Просмотров 39 тыс.
7 Mistakes Beginners Make with SQL
10:47
Просмотров 17 тыс.
ОКОННЫЕ ФУНКЦИИ SQL за 13 минут
13:46
MySQL SELF JOINS are ... ughhh
10:03
Просмотров 48 тыс.
SQL Joins: A Guide and Examples
11:38
Просмотров 22 тыс.
Плохие и хорошие видеокарты
1:00
What’s your charging level??
0:14
Просмотров 7 млн
What’s your charging level??
0:14
Просмотров 7 млн
😱НОУТБУК СОСЕДКИ😱
0:30
Просмотров 2,5 млн