Creo que si funciona, esta vez casi seguro..
Pero si no te funciona pone parentesis en la subconsulta, o sea:
SELECT tiendas.id, tiendas.nombre, COUNT(*)
FROM tiendas
JOIN ventas ON tienda.id = ventas.idtienda
GROUP BY tiendas.id
HAVING COUNT(*) = (SELECT COUNT(bodegas.id) FROM bodegas );
en COUNT(bodegas.id) tambien podrias poner COUNT(*) tal vez sea mejor.