Nie narzeka, ponieważ podzapytanie zwraca 2 wyniki, ale dwie kolumny. Ale nawet jeśli zwróci tylko jedną kolumnę, zwróci 2 wyniki, a główne zapytanie zrobi to samo.
W żadnym wypadku nie ma potrzeby wykonywania podzapytania:
SELECT s.shopname
FROM Shopstable s
JOIN OrdersTable o ON s.shopnum=o.shopnum
GROUP BY s.shopname
ORDER BY count(*) DESC
LIMIT 1