С общим типом Ad фильтрацию по полю для конкретной сущности используя метод createQueryBuilder не получится реализовать?
Не получится. Ad ничего не знает о том, что у него есть дочернее поля Ad_1_field_1 и репозиторий работает с маппингом сущности, которую передали в конструкторе. Тут 2 решения. Или перенести поля в сущность Ad, или создать отдельный репозиторий, который работает с Ad1 и в нем фильтровать.
В данном случае вам нужно для таблицы Ad_1 сделать отдельный репозиторий, который будет работать только с сущностью Ad_1. Вот в нем вы и сможете отфильтровать по полю Ad_1_field_1.
Только так.
P.S. при этом instanceOf уже не нужно будет указывать явно. Оно добавится автоматически.
Не получится. Ad ничего не знает о том, что у него есть дочернее поля Ad_1_field_1 и репозиторий работает с маппингом сущности, которую передали в конструкторе. Тут 2 решения. Или перенести поля в сущность Ad, или создать отдельный репозиторий, который работает с Ad1 и в нем фильтровать.