es que doctrine como lo indica el mismo proyecto
Cita: TIP Disclaimer: In general, an ORM is surely not the best tool for the job for mass data movements, however, it can be a convenient alternative if the performance is sufficient. Every RDBMS has its own highly efficient commands for such operations. For maximum efficiency you should consult the manual of your RDBMS.
fuente
http://www.doctrine-project.org/2009...rocessing.html
el ejemplo que te coloque es el mismo que brindan para mass insert, aunque lo más sano para ese tipo de insert masivos es que prepares
scripts más ligeros a nivel de batch, ya que imagino que es algo que no vas a hacer normalmente en la app.
Edit en teoría y lo que quería que vieras con el ejemplo de la misma documentación, es que no hay manera de armar el query como lo indicas tu, lo más cercano es que vayas haciendo el flush cada cantidad de registros para no sobrecargar el consumo de registros como bien lo indican en el link que te dejo arriba, sin embargo como bien lo indican ellos mismos lo mejor para este tipo de casos no es usar un ORM sino realizar un script para el caso específico, que si lo indicas tal vez se te pueda orientar. Saludos