bigint
データ型として定義された列を持つ Postgres 8.2 テーブルがあります。
私が行うときsum(column)
の戻り値の型はnumeric
. bigint
結果が の最大値を超えないことが確実にわかっているので、合計を強制的に型キャストしたいと思いますbigint
。次のようなサブクエリを使用してこれを達成できました。
select T.big_col_total::bigint from (select sum(big_col) as big_col_total from big_table) T;
サブクエリを使用せずにこれを行う方法はありますか?つまり、sum
何らかの形で直接型キャストできますか? いくつかの方法を試しましたが、どちらも構文エラーになります。
(背景: Hibernate からこのクエリを実行しているので、クエリからの戻りデータ型を BigInteger に限定することが重要です。bigint + bigint = numeric (Java 側の BigDecimal)