No one can make SQL look so easy! Totally worth learning SQL from your recent boot camp cohort 2. The way you approach and solve complex queries by breaking them down into smaller parts was the most important thing I learned from you! ♥ Keep bringing such content, this is what raises my confidence even more in SQL!! 😅🙌
hands down!! what a genius you are ! specially the third problem and the explaination just wow,,, taufiq sir because of you , i have cleared many concepts of sql...may god bless you taufiq
I am seriously gonna laugh at people if they opt for any paid course of SQL even after coming across your channel. Hands down I would choose you over anyone to learn SQL from.
It's really awesome explanation and this is the best SQL channel i have ever got,thanks a lot for sharing the knowledge. Looking forward for the more videos with SQL examples.
Greetings brother, from Singapore. As a working adult who is doing self-study, such exercises with step-by-step solutions are extremely priceless! Thank you Taufiq.
Query 3 ,MSSQL with echo as (select state,candidate_id,count(candidate_id) as seatcount_byid from results_tab group by state,candidate_id), rt as ( select *,dense_rank() over (partition by candidate_id order by seatcount_byid desc) as position from echo), final1 as (select * from rt where position
Bro u r a gem... Keep doing many more contents. This help me understand to solve the queries in a more better way. As I have also attempted these queries but failed to solve it. These are from hacker rank got it in a meesho 1st round. These video help me understand much better. Thanks a lot broo...
Hi, toufiq your videos on SQL are very good and your explanation is very detailed. It would be helpful if you post more content on SQL like this and share some roadmaps how we can grow with SQL as primary skill. Please suggest some good certification courses for SQL that are available online
1st question my way of approach with cte as( select * from candidate c inner join results r on c.id=r.candidate_id) select party,count(*) as no_of_seats from( select *,dense_rank()over (partition by constituency_id order by votes desc) as rn from cte ) dt where rn=1 group by party
Hi @techTFQ in the second query you have use group by clause on alias customer and status, but as per execution order group by is executed before select, so when I tried running query you explained it throws me error invalid identifier, Cn you please let me know what to do. I am using Oracle SQL Developer
First one my approach with cte as(select *, min(votes) over (partition by constituency_id) as lowest_vote from result), cte2 as( select *, (votes-lowest_vote)as vote_diff from cte), cte3 as ( select *, row_number() over (partition by constituency_id order by vote_diff desc) as rnk from cte2) select concat(c.party,' ',count(*)) as party_seats from cte3 join candidate c on cte3.candidate_id=c.d where rnk=1 group by c.party
Hi Taufiq, I am your fan ! You have become the ultimate destination to clear doubts & concept. I want to share 2 sql problems which I couldn't solve in interview. How should I share ? Can't find your email in this chat .
Here is the query with out window function : Select concat(party,' ',count(*)) from (select constituency_id,max(votes)as votes from candidates c inner join results r on c.id=r.candidate_id group by constituency_id)as temp inner join results r on temp.constituency_id=r.constituency_id and temp.votes=r.votes inner join candidates c on r.candidate_id=c.id group by party;
Can this be done by using max function to retrieve candidates with most votes in each constituency in sub query then taking count of constituency in main query
order by is unnecessary inside a cte because the purpose of cte is to return a resultset, how the resultset is ordered is not necessary. And yes order by will consume some resources so better to avoid it when its not required
my Ans : Q1. select concat(party,' ',count(*)) as seats from ( select c.party,r.constituency_id,r.votes, row_number() over(partition by constituency_id order by votes desc) as rk from candidates c join results r on c.id=r.candidate_id)x where x.rk=1 group by party
with cte as (select c.id, c.party,r.constituency_id,r.votes from candidates as c inner join results as r on r.c_id=c.id), cte1 as( select * , rank() over (partition by constituency_id order by constituency_id, votes desc) as rn from cte) select party, count(1) as won_seat from cte1 where rn=1 group by party
Hi I am a professional accountant, and do loads of business analysis, reporting etc in Excel. I would like to learn Business SQL for Data Analytics, kindly share the road map and learning source. Thanks
Please let me know if its correct or not for 1st question with cte as (select party, max(votes) from candidates c join results r on c.id=r. candidate_id group by constituency_id ) select concat(party,' ',count(party)) as party_seats_won from cte group by party;
select * from(select c.party, count(c.party), rank() over(partition by r.constituency_id order by votes desc) as rnk from candidates c join results r on c.id=r.candidate_id group by c.party) x where x.rnk=1; is this good?
with cte as( select candidates.*,constituency_id,votes FROM candidates JOIN results ON candidates.id=results.candidate_id ) select constituency_id,party FROM(select constituency_id,party,votes,DENSE_RANK()OVER(partition by constituency_id ORDER BY votes DESC) as "x" FROM cte) as es where es.x=1;
Hai....sir.... please write the querys 1) how to find highest salary of the employee? 2) query to find 2nd ,3rd,4th ....higest salaries? And query to find nth highest salary?
with cte as (select row_number() over(partition by party ) rn, c.id, party, constituency_id, votes from candidates c join results r on r.candidate_id = c.id), cte2 as (select c1.id, c2.id, c1.party, c1.constituency_id,c2.constituency_id, c1.votes dvot, c2.votes rvot from cte c1 join cte c2 on c1.constituency_id = c2.constituency_id and c1.rn = c2.rn and c1.party c2.party), cte3 as (select *, case when dvot > rvot then 1 else 0 end flag from cte2) select concat(party, ' ', total) wons from (select party, sum(flag) total from cte3 group by 1)
-- Hi, I tried without CTE, Please check my query sir :- SELECT Party, count(*) FROM [dbo].[candidates] WHERE ID IN (SELECT r1.candidate_id from [results] R1, [results] R2 WHERE R1.Constituency_id=R2.Constituency_id and R1.VOTES< R2.VOTES ) GROUP BY Party
No one can make SQL look so easy! Totally worth learning SQL from your recent boot camp cohort 2. The way you approach and solve complex queries by breaking them down into smaller parts was the most important thing I learned from you! ♥
Keep bringing such content, this is what raises my confidence even more in SQL!! 😅🙌
hands down!! what a genius you are ! specially the third problem and the explaination just wow,,, taufiq sir because of you , i have cleared many concepts of sql...may god bless you taufiq
I am seriously gonna laugh at people if they opt for any paid course of SQL even after coming across your channel.
Hands down I would choose you over anyone to learn SQL from.
Such great SQL content videos! I can always learn things from your videos. Shoutout to techTFQ!
Happy to hear that! Thank you so much
After a week of watching your lessons, I was able to solve these queries for myself, thanks a lot.
Great 👍
It's really awesome explanation and this is the best SQL channel i have ever got,thanks a lot for sharing the knowledge. Looking forward for the more videos with SQL examples.
You are the best tech teacher
very nice problems and excellent solutions with great explanation. Great job
Super useful. I’m relating everything I learn about SQL to New Relic which is what my company uses for observability.
Thank you very much 😊
Greetings brother, from Singapore. As a working adult who is doing self-study, such exercises with step-by-step solutions are extremely priceless! Thank you Taufiq.
Excellent explanation!!💯 Thankyou for making our life easy. God bless you!
Toufiq bhai what explains yaar . Everyone should understand what you want to give us from this video.great Bhai
Thank you so much bro 😀
this is not intermediate level but yet it is very useful there are so many things to get from this video
good to know
what level is this then?
@@vishalgoswami7512i would say it’s advanced
Amazing Concepts, happy to learn a lot of it from your videos thanks a lot!!
You are as always best 💯 God bless
Thank you so much 😀
Explaining step by step clearly. Good Video 😊
Thank you Toufiq bhai, the way that you explained queries is so good and i hope who don't have any knowledge on sql they will easily to understand
Thank you very much. You explain things really well and make it easy to follow. I really appreciate it.
Thanks Man..
very very useful..
very easy to understand
Big Thx......
Hi toufiq really hats off to your afforts and explanation.plz start an exclusive course on data analytics.
Thank you bro, I will try my best
Nicely explained 🙌🏻
Thanks for efforts. Your content is very useful 🥰
Wow, you are the best🎉
Query 3 ,MSSQL
with echo as (select state,candidate_id,count(candidate_id) as seatcount_byid from results_tab
group by state,candidate_id),
rt as (
select *,dense_rank() over (partition by candidate_id order by seatcount_byid desc) as position from echo),
final1 as (select * from rt
where position
You are an excellent teacher.
The way of approach is easy to understand and follow , Thank you so much.
You are absolutely amazing sir!!!!
Bro u r a gem... Keep doing many more contents. This help me understand to solve the queries in a more better way. As I have also attempted these queries but failed to solve it. These are from hacker rank got it in a meesho 1st round. These video help me understand much better. Thanks a lot broo...
Hi, toufiq your videos on SQL are very good and your explanation is very detailed. It would be helpful if you post more content on SQL like this and share some roadmaps how we can grow with SQL as primary skill.
Please suggest some good certification courses for SQL that are available online
Hi Thoufiq, really loved your videos and learned a lot from you. It will be beneficial if you can share the Cheat Sheet of SQL syntaxes.
Thanks for awesome session.
Great video ❤
Thanks !
Glad you liked it!
Amazing stuff. Really enjoyed it and learned a lot. 5 stars!
Thank you
Nice explanation
❤good one
brilliant explanation
This is a great video. I can only imagine how it is to solve if you had to wtite this on a simple paper as a candidate
Thanks:)
1st question my way of approach
with cte as(
select * from candidate c
inner join results r
on c.id=r.candidate_id)
select party,count(*) as no_of_seats from(
select *,dense_rank()over (partition by constituency_id order by votes desc) as rn from cte ) dt
where rn=1 group by party
Oh great video and insightful
Upload more video about stored procedure and udf functions with exception handling
Thank you and noted bro
Ur the best❤
Thanks for this!
You're welcome
Hi @techTFQ in the second query you have use group by clause on alias customer and status, but as per execution order group by is executed before select, so when I tried running query you explained it throws me error invalid identifier, Cn you please let me know what to do. I am using Oracle SQL Developer
The third one was the most challenging for me to get my head around.
Thanks ❤
You're welcome 😊
First one my approach
with cte as(select *,
min(votes) over (partition by constituency_id) as lowest_vote
from result),
cte2 as(
select *,
(votes-lowest_vote)as vote_diff
from cte),
cte3 as (
select *,
row_number() over (partition by constituency_id order by vote_diff desc) as rnk
from cte2)
select concat(c.party,' ',count(*)) as party_seats from cte3
join candidate c
on cte3.candidate_id=c.d
where rnk=1
group by c.party
You are Amazing
Thank you so much
Hi,Can you make some sql interview questions for data engineers.
let me see if I can find any
08:48 I did not understand why we used count(1). Could you help me understand?
Hi Sir
Please do one video for how to retrieve specific data from XML column in Oracle SQL
Excellento.
Do you have any idea of starting PlSql bootcamp?
Dear sir ,when your next SQL live bootcamp start?eagerly waiting for this
Hi sir string_agg function in postgress but i am using mssql server i could not find the aternative function for it
try going with group_concat()
Hi Taufiq, I am your fan ! You have become the ultimate destination to clear doubts & concept. I want to share 2 sql problems which I couldn't solve in interview. How should I share ? Can't find your email in this chat .
Thank you 🙏
Glad to hear that .. my email techtfq@gmail.com
Here is the query with out window function : Select concat(party,' ',count(*)) from (select constituency_id,max(votes)as votes from candidates c inner join results r on c.id=r.candidate_id group by constituency_id)as temp inner join results r on temp.constituency_id=r.constituency_id and temp.votes=r.votes inner join candidates c on r.candidate_id=c.id group by party;
thank you
Can you please share next boot camp slots for SQL
Please do more interview questions on mysql
Noted
Can this be done by using max function to retrieve candidates with most votes in each constituency in sub query then taking count of constituency in main query
will using an order by in a cte slow down query performance? or will it just be ignored
order by is unnecessary inside a cte because the purpose of cte is to return a resultset, how the resultset is ordered is not necessary. And yes order by will consume some resources so better to avoid it when its not required
my Ans :
Q1.
select concat(party,' ',count(*)) as seats from (
select c.party,r.constituency_id,r.votes,
row_number() over(partition by constituency_id order by votes desc) as rk
from
candidates c
join results r on c.id=r.candidate_id)x
where x.rk=1
group by party
with cte as
(select c.id, c.party,r.constituency_id,r.votes
from candidates as c
inner join
results as r on r.c_id=c.id),
cte1 as(
select *
, rank() over (partition by constituency_id order by constituency_id, votes desc) as rn
from cte)
select party, count(1) as won_seat
from cte1
where rn=1
group by party
Super bro
String_arg() inside distinct is not a valid in ms sql please give me alternative code😢 19:32 also the order by inside strinģ arg 35:48
Hi which software are you using to write this SQL code?
PostgreSQL DB, PG Admin tool
Hi I am a professional accountant, and do loads of business analysis, reporting etc in Excel. I would like to learn Business SQL for Data Analytics, kindly share the road map and learning source. Thanks
@TechTFQ: This question is for which company? In India or North America?
Getting error while using string aggregate function in second question. It is showing that the fuction does not exist. What is the solution for this ?
Hi taufiq i want to buy sql course but payment portal is not able to accept my card
itrat ali from NJ USA
website is not working. any other link for dataset?
S man.. It is good
Thank you
Why did we join when we already used cte?
why have you removed order by clause within cte? in 3rd query? please anyone explain
My age is 32 can I enter into data analyst job if I acquire skills required for this job role
I know this is from hacrkrank interview questions for ETL Testing I faces this all 3
nice, good to know
Which company bro ?
@@sarvesht7299meesho
how to do string_agg fcn in mysql ?
In SQL Server string_agg not supporting distinct then how to solve 2nd one
Plsql bootcamp please
Please let me know if its correct or not for 1st question
with cte as (select party, max(votes) from candidates c
join results r on c.id=r. candidate_id group by constituency_id )
select concat(party,' ',count(party)) as party_seats_won from cte group by party;
select * from(select c.party, count(c.party), rank() over(partition by r.constituency_id order by votes desc) as rnk from candidates c join results r on c.id=r.candidate_id group by c.party) x where x.rnk=1; is this good?
Can we use count(*) instead of count(1) in my sql?
Same question. Did you find any solution?
with cte as(
select candidates.*,constituency_id,votes FROM candidates JOIN results ON candidates.id=results.candidate_id
)
select constituency_id,party FROM(select constituency_id,party,votes,DENSE_RANK()OVER(partition by constituency_id ORDER BY votes DESC) as "x" FROM cte) as es where es.x=1;
Hai....sir.... please write the querys 1) how to find highest salary of the employee?
2) query to find 2nd ,3rd,4th ....higest salaries?
And query to find nth highest salary?
use rank over order by salary
@@vishalgoswami7512 if u don't mind....can you write?
I know these are the basic qns but i need proper queries plz ...( if anybody see my mes... u can also rply )
Sir please make the video in Hindi because Hindi is familiar for us
with cte as
(select row_number() over(partition by party ) rn, c.id, party, constituency_id, votes
from candidates c
join results r on r.candidate_id = c.id),
cte2 as
(select c1.id, c2.id, c1.party, c1.constituency_id,c2.constituency_id, c1.votes dvot, c2.votes rvot
from cte c1
join cte c2 on c1.constituency_id = c2.constituency_id and c1.rn = c2.rn and c1.party c2.party),
cte3 as
(select *,
case when dvot > rvot then 1 else 0 end flag
from cte2)
select concat(party, ' ', total) wons
from
(select party, sum(flag) total
from cte3
group by 1)
-- Hi, I tried without CTE, Please check my query sir :-
SELECT Party, count(*) FROM [dbo].[candidates] WHERE ID IN (SELECT r1.candidate_id from [results] R1, [results] R2 WHERE R1.Constituency_id=R2.Constituency_id and R1.VOTES< R2.VOTES ) GROUP BY Party
Appreciate it. @techTFQ