Raw SQL from Doctrine Query Object - Revised
http://insidethe.agency/blog/raw-sql-from-doctrine-query-object-revised
このサイトの記事自体が古いので、split()を使っているのですがPHP 5.3.0からは非推奨になっているため、preg_split()に書き換えると問題なく動きます!
$query_str_parts = preg_split('/\?/', $query_str);
こんな感じです!
更に、カラム名のリネームを削除したい場合は、preg_splitの前(16行目)に下記を追加するとできます。
$query_str = preg_replace('/AS\s\`[0-9a-z!-~]*\`/', '', $query_str);
リファレンスを確認しつつ、パースできないかやっているときに発見したので、とても助かりました。