Being an interviewer for BIEs/BAs in a FAANG company, I can absolutely vouch for the content of this video, well presented and gives a very good understanding on what to expect on a real SQL assessment. Keep up the good work! I really do enjoy watching your take on different topics :)
Wish there was a video like this one 2 years ago when I started interviewing! The SQL resources you listed are exactly what I discovered the hard way over many many months.
Gr8 Video ..! I learn the SQL but when I went to Interview the questions level was difficult I'm not able to solve those properly without hints. Some of the question was related to how you handle 15 million transaction records memory optimization etc. Do you think codewars or any other platform practice is sufficient. Becoz in the interview they ask how you handle large scale data so how I can get hands on such cases..?
Can you also talk more about Code Efficiency and High Quality Codes in SQL? For programming languages, there is time and space complexities but for SQL, I am not aware how to evaluate efficiency and higher quality of the code?
in SQL its harder to evaluate it "just based on code" as different flavours (MySQL, T-SQL, PostgreSQL, Oracle...) and sometimes even different versions of them have different inner workings of planner (the thing that decides how to execute the query on background). So generally you do optimizing query afterwards, not before.
Q: What's in a Real SQL Interview? A: Life, the Universe, and Everything! Q: You mean 42 !! A: Yes, but not normal 42, but SQL result | 42 | 1 rows selected Q: Hired
The solution for the hard SQL was so tedious (using 2 partition by, 2 group by, 1 join). Since there can be many solutions to the same problem, how does someone talk about the pros and cons of 2 solutions? My guess is to discuss number/speed of operations (query plan), maintainability (how easily it can break), usefulness of subqueries (how easily they can be copy pasted from/to by other teammates/other problems). Have you any opinions /resources on such matters? (i mostly see only query plan discussions online but can't find qualitative discussions like the latter points)
Agree that hard SQL questions can be very involved. It’s helpful to break it down into smaller pieces and use command table expressions to make tmp tables www.postgresql.org/docs/9.4/queries-with.html. In terms of comparing 2 solutions - SQL questions are different from algorithm questions that are often asked in software engineering interviews which typically require complexity using big O notation. What you listed is definitely helpful for comparison but I rarely experienced any question on comparing different solutions in DS interviews. The most common ones are just ask you to provide a solution and the interviewer will evaluate you based on the quality of it, i.e. the aspects covered in the video - executable and no syntax error, clean and concise code, consider edge cases (e.g. using COALESCE when a value can be Null), optimized efficiency (e.g. using minimum number of joins)
Thanks for sharing!! Could I ask you a question? I was just wondering in real life project, how do I know if my SQL query returned the right result since this is no answer like those sql practice tests have. Thanks!
I wish Emma see my comment...☺️ I have a question regarding the second sql question...why used two cte when calculations could have been done using single cte And. Retention= installs.first_date+1/installs.counts
SQL is Analyst tool, Data Scientist using sql in reality very seldom and it not makes sense to practice something what you never going to use in a real life. If company asking a SQL on the interview, that mean this company looking for Analyst and they doesn't care about your talent or scientific approach, and this is a biggest problems in hiring process in this days.
@@jeoffleonora4612 SQL is useful for engineers, but not for DS. Everybody need to be expert in own tool, Analyst and data engineers in SQL but Data Scientist in Statistics with R and Python. You can not do prediction with SQL. It is ok for simple aggregation and exploratory analysis. Data Science going far then that. And if Data Scientist will focus on the SQL then why we need Analysts? There must be a team, where Data Scientist, Analysts, Data Engineers, everyone have to do what he was trained to do best and then this team will be fast and successful. You will never find the doctor who is doing doctor, nurse and technician work, why we want to have all in one in IT? Data Scientist need to know data structure and be familiar with SQL. Analyst need to polish SQL and be expert. Together they are a powerful team.
While I understand where the confusion might come from, I don't personally agree with this statement "Data Scientist using sql in reality very seldom and it not makes sense to practice something what you never going to use in a real life". In fact, SQL is used so often in the day to day job at least for tech companies in silicon valley. May be you are talking about a specific company? Then I think it makes sense. Also, I'm not sure there's such a huge difference between DS and DA. Actually, Lyft's DS was rebranded from DA. See this medium post medium.com/@chamandy/whats-in-a-name-ce42f419d16c. Out of curiosity - what do you think are the things/tools DS should know about?
@@observer698 I work for big company, using only R and Python, and my SQL skills never been used on daily basis. SQL is may be good for retrieve data, data science is mostly forecast. And when you need you can do descriptive analysis using R or Python sufficient with visualization. I leave SQL for engineers. If Lift did mistake to designate DA as Data Scientist we not necessary to repeat and do the same thing. Everybody must to be expert in own area of expertise and then work will be done productive. Like shampoo and conditioner 2 in 1 never really good as shampoo and conditioner separated.
Being an interviewer for BIEs/BAs in a FAANG company, I can absolutely vouch for the content of this video, well presented and gives a very good understanding on what to expect on a real SQL assessment. Keep up the good work! I really do enjoy watching your take on different topics :)
Thanks Matteo for the feedback, glad it was helpful!
Wish there was a video like this one 2 years ago when I started interviewing! The SQL resources you listed are exactly what I discovered the hard way over many many months.
I wish I discovered this channel earlier. Amazing video, Emma. Thank you!
You're so welcome, Sardor!
I'm prepping for interviews right now and you are so helpful. Thank you! :)
I can't thank you enough for this. Keep up the great work.
You're very welcome!
Found this helpful as well. Honestly, your channel is super underrated and I know your content will just continue to get better! :)
Another great video! Thank you very much for posting!
My pleasure!
多谢你的一系列视频讲座,非常有用,是我见过的最全面的指导。我即使问我当data scientists 的朋友,他们都不会跟我讲这么细,谢谢无私奉献你的经验。
emma my interview queen!!
Gr8 Video ..! I learn the SQL but when I went to Interview the questions level was difficult I'm not able to solve those properly without hints. Some of the question was related to how you handle 15 million transaction records memory optimization etc.
Do you think codewars or any other platform practice is sufficient. Becoz in the interview they ask how you handle large scale data so how I can get hands on such cases..?
Can you also talk more about Code Efficiency and High Quality Codes in SQL? For programming languages, there is time and space complexities but for SQL, I am not aware how to evaluate efficiency and higher quality of the code?
She doesn't know it
upvote
in SQL its harder to evaluate it "just based on code" as different flavours (MySQL, T-SQL, PostgreSQL, Oracle...) and sometimes even different versions of them have different inner workings of planner (the thing that decides how to execute the query on background). So generally you do optimizing query afterwards, not before.
thank you very much please, you rock!!!,I like you seriously because you helped a lot in your videos
Q: What's in a Real SQL Interview?
A: Life, the Universe, and Everything!
Q: You mean 42 !!
A: Yes, but not normal 42, but SQL result | 42 | 1 rows selected
Q: Hired
特别喜欢的你的视频, 都非常干货!
The solution for the hard SQL was so tedious (using 2 partition by, 2 group by, 1 join).
Since there can be many solutions to the same problem, how does someone talk about the pros and cons of 2 solutions?
My guess is to discuss number/speed of operations (query plan), maintainability (how easily it can break), usefulness of subqueries (how easily they can be copy pasted from/to by other teammates/other problems).
Have you any opinions /resources on such matters? (i mostly see only query plan discussions online but can't find qualitative discussions like the latter points)
Agree that hard SQL questions can be very involved. It’s helpful to break it down into smaller pieces and use command table expressions to make tmp tables www.postgresql.org/docs/9.4/queries-with.html.
In terms of comparing 2 solutions - SQL questions are different from algorithm questions that are often asked in software engineering interviews which typically require complexity using big O notation. What you listed is definitely helpful for comparison but I rarely experienced any question on comparing different solutions in DS interviews. The most common ones are just ask you to provide a solution and the interviewer will evaluate you based on the quality of it, i.e. the aspects covered in the video - executable and no syntax error, clean and concise code, consider edge cases (e.g. using COALESCE when a value can be Null), optimized efficiency (e.g. using minimum number of joins)
Emma you are awesome...
Actually a GROUP BY first plus a simple JOIN and GROUP BY can solve the hard one
Thanks for sharing!! Could I ask you a question? I was just wondering in real life project, how do I know if my SQL query returned the right result since this is no answer like those sql practice tests have. Thanks!
Nice video, could you walk us through a couple medium and hard ones?
For sure! Do you have an example in mind?
Very useful video. Thank you
You are very welcome!
Nice video
I wish Emma see my comment...☺️
I have a question regarding the second sql question...why used two cte when calculations could have been done using single cte
And. Retention= installs.first_date+1/installs.counts
its very helpful
Glad to hear that
SQL is Analyst tool, Data Scientist using sql in reality very seldom and it not makes sense to practice something what you never going to use in a real life. If company asking a SQL on the interview, that mean this company looking for Analyst and they doesn't care about your talent or scientific approach, and this is a biggest problems in hiring process in this days.
Can’t say I agree with that. SQL is so useful even for software engineers. No need to argue for DS.
@@jeoffleonora4612 SQL is useful for engineers, but not for DS. Everybody need to be expert in own tool, Analyst and data engineers in SQL but Data Scientist in Statistics with R and Python. You can not do prediction with SQL. It is ok for simple aggregation and exploratory analysis. Data Science going far then that. And if Data Scientist will focus on the SQL then why we need Analysts? There must be a team, where Data Scientist, Analysts, Data Engineers, everyone have to do what he was trained to do best and then this team will be fast and successful. You will never find the doctor who is doing doctor, nurse and technician work, why we want to have all in one in IT? Data Scientist need to know data structure and be familiar with SQL. Analyst need to polish SQL and be expert. Together they are a powerful team.
While I understand where the confusion might come from, I don't personally agree with this statement "Data Scientist using sql in reality very seldom and it not makes sense to practice something what you never going to use in a real life". In fact, SQL is used so often in the day to day job at least for tech companies in silicon valley. May be you are talking about a specific company? Then I think it makes sense.
Also, I'm not sure there's such a huge difference between DS and DA. Actually, Lyft's DS was rebranded from DA. See this medium post medium.com/@chamandy/whats-in-a-name-ce42f419d16c.
Out of curiosity - what do you think are the things/tools DS should know about?
if you are working for a small company you might need to wear different hats at once so always good to know sql.
@@observer698 I work for big company, using only R and Python, and my SQL skills never been used on daily basis. SQL is may be good for retrieve data, data science is mostly forecast. And when you need you can do descriptive analysis using R or Python sufficient with visualization. I leave SQL for engineers.
If Lift did mistake to designate DA as Data Scientist we not necessary to repeat and do the same thing. Everybody must to be expert in own area of expertise and then work will be done productive. Like shampoo and conditioner 2 in 1 never really good as shampoo and conditioner separated.