Exemple:
Il n’y avait qu’à le mettre dehors.
Il n’avait qu’à le mettre dehors.
Il n’y avait qu’à y songer plus tôt.
Il n’avait qu’à y songer plus tôt.
C'est la différence entre il y a et il a. Les phrases avec il y a sont impersonnelles. La négation ne...que est une restriction qui veut dire seulement.
Dans les phrases données avec il a le sujet est une personne. Quelqu'un est le sujet.
Sans contexte c'est un peu difficile donc disons qu'il s'agit d'un garçon qui s'appelle Marc. Chez lui il y a un chien. Il faut laisser sortir le chien. Dans le passé (l'imparfait dans ces phrases), il y avait Marc et son chien. Marc avait besoin de laisser sortir le chien. Mais le chien n'est pas sorti. Puis Marc avait une idée.
Il n’y avait qu’à le mettre dehors. Impersonnel. Il suffisait de le mettre dehors. Sujet il impersonnel, COD le = le chien.
Il n’avait qu’à le mettre dehors. Marc avait besoin de le mettre dehors. Il (Marc) avait seulement une chose à faire.
Parlons de son idée :
Il n’y avait qu’à y songer plus tôt. Impersonnel. Il fallait seulement en penser avant le reste.
Il n’avait qu’à y songer plus tôt. Marc pensait seulement à son rêve mais pas à temps. Il n'avait pas tout prévu auparavant.