jonmrich
jonmrich

Reputation: 4323

Merging two mySQL queries with a join

I know I need to do some sub-query for this, but I can't get it to work.

Query 1:

SELECT full_db3.dma, dma_list.dma_name 
from `full_db3` 
inner join dma_list on full_db3.dma = dma_list.dma;

Query 2:

SELECT dma, COUNT(*) as dma_count, 
    round(COUNT(*)/(SELECT COUNT(*) FROM full_db3) * 100,2) as dma_percent 
FROM full_db3 
where dma != '0' 
GROUP BY dma 
ORDER BY dma_count DESC;

The first query matches a dma number to a dma name. What I need is for this dma name to be added into what's returned from the query as a result of query 2 to give me: dma, dma_name, dma_percent

What's the best way to combine these?

Upvotes: 1

Views: 26

Answers (1)

Barmar
Barmar

Reputation: 780673

Just add a JOIN with dma_list to the second query:

SELECT full_db3.dma, dma_list.dma_name, COUNT(*) as dma_count, 
    round(COUNT(*)/(SELECT COUNT(*) FROM full_db3) * 100,2) as dma_percent 
FROM full_db3 
INNER JOIN dma_list on full_db3.dma = dma_list.dma
where full_db3.dma != '0' 
GROUP BY full_db3.dma 
ORDER BY dma_count DESC;

Upvotes: 1

Related Questions