質問: true) ``` 出力されたSQL ``` select "__id" as id, "year" from sample ``` よろしくお願いします。
回答: 自動生成されるエイリアス名がアンダースコア始まりになるが、利用しているDBMSでは命名違反になるのでなんとかしたい、ということだと理解しました。 現行バージョンでは対処不能かなと考えます。 私も最近エイリアス絡みの不具合を踏んで似たような内容を調べていました。 エイリアス名を取得する実装は `org.hibernate.mapping.Column#getAlias`メソッドになります。 * 生成するエイリアス名の命名戦略は固定でありコンフィグ等で変えられる余地はありません。 * カラム名については `getName`メソッドに対応する`getQuotedName`メソッドが存在しますが、エイリアスについて対応するメソッドが無いのでクオートする仕組みが無いと予想します。 ちなみにリンクしたissueでも触れられていますが、Hibernate6からはクエリにエイリアスを用いない方式になるそうなので自動的に問題は解決するかもしれません(ただし現状Hibernate6はまだアルファ版です)。