Nestěžuje si, protože poddotaz vrací 2 výsledky, ale dva sloupce. Ale i kdyby vrátil pouze jeden sloupec, vrátil by 2 výsledky a hlavní dotaz by udělal totéž.
V žádném případě není potřeba poddotaz:
SELECT s.shopname
FROM Shopstable s
JOIN OrdersTable o ON s.shopnum=o.shopnum
GROUP BY s.shopname
ORDER BY count(*) DESC
LIMIT 1