[thelist] SQL subqueries in mySQL 3.23.54

Tab Alleman Tab.Alleman at MetroGuide.com
Tue Mar 2 09:31:25 CST 2004


Joshua Olson wrote:

> You can do that:
> 
> SELECT B.id, Count(*)
> FROM B
> WHERE B.id = 1
> GROUP BY B.id
> UNION
> SELECT C.id, Count(*)
> FROM C
> WHERE C.id = 1
> GROUP BY C.id
> 
> Unfortunately, that doesn't get you much closer to the solution.

Yeah, but I mean, can you do this:
(
SELECT MAX(A.Col_1), ...MAX(A.Col_n), B.id, Count(*) AS Count_B
FROM B
INNER JOIN A ON B.id=A.id
GROUP BY B.id
UNION
SELECT MAX(A.Col_1), ...MAX(A.Col_n), C.id, Count(*) AS Count_C
FROM C
INNER JOIN A ON C.id=A.id
GROUP BY C.id
)
WHERE Count_B > Count_C

I'm not sure if you can do a WHERE on an entire UNION.


More information about the thelist mailing list